Lines 9-15
Link Here
|
9 |
*/ |
9 |
*/ |
10 |
|
10 |
|
11 |
#include "CommonFWriteBufferFlusher.h" |
11 |
#include "CommonFWriteBufferFlusher.h" |
12 |
|
12 |
#include <cstdio> |
|
|
13 |
#include <errno.h> |
13 |
|
14 |
|
14 |
namespace Common |
15 |
namespace Common |
15 |
{ |
16 |
{ |
Lines 32-38
Link Here
|
32 |
} |
33 |
} |
33 |
} |
34 |
} |
34 |
//----------------------------------------------------------------------- |
35 |
//----------------------------------------------------------------------- |
35 |
FWriteBufferFlusher::FWriteBufferFlusher( const wchar_t* fileName, size_t bufferSize, const wchar_t* mode/*=L"wb"*/ ) |
36 |
/* FWriteBufferFlusher::FWriteBufferFlusher( const wchar_t* fileName, size_t bufferSize, const wchar_t* mode/*=L"wb"*//* ) |
36 |
: mBufferSize(bufferSize) |
37 |
: mBufferSize(bufferSize) |
37 |
, mBuffer( new char[bufferSize] ) |
38 |
, mBuffer( new char[bufferSize] ) |
38 |
#ifdef _WIN32 |
39 |
#ifdef _WIN32 |
Lines 48-54
Link Here
|
48 |
{ |
49 |
{ |
49 |
mError = ( setvbuf( mStream , mBuffer, _IOFBF, mBufferSize ) != 0 ); |
50 |
mError = ( setvbuf( mStream , mBuffer, _IOFBF, mBufferSize ) != 0 ); |
50 |
} |
51 |
} |
51 |
} |
52 |
}*/ |
52 |
//-------------------------------------------------------------------- |
53 |
//-------------------------------------------------------------------- |
53 |
FWriteBufferFlusher::~FWriteBufferFlusher() |
54 |
FWriteBufferFlusher::~FWriteBufferFlusher() |
54 |
{ |
55 |
{ |
Lines 83-89
Link Here
|
83 |
void FWriteBufferFlusher::startMark() |
84 |
void FWriteBufferFlusher::startMark() |
84 |
{ |
85 |
{ |
85 |
// store the current file position |
86 |
// store the current file position |
86 |
__int64 currentPos = _ftelli64( mStream); |
87 |
long long currentPos = ftello( mStream); |
87 |
|
88 |
|
88 |
mLastMarkId++; |
89 |
mLastMarkId++; |
89 |
mMarkIds.insert(std::make_pair(mLastMarkId, currentPos)); |
90 |
mMarkIds.insert(std::make_pair(mLastMarkId, currentPos)); |
Lines 100-106
Link Here
|
100 |
{ |
101 |
{ |
101 |
if ( markId == END_OF_STREAM ) |
102 |
if ( markId == END_OF_STREAM ) |
102 |
{ |
103 |
{ |
103 |
return (_fseeki64(mStream, 0, SEEK_END) == 0); |
104 |
return (fseeko(mStream, 0, SEEK_END) == 0); |
104 |
} |
105 |
} |
105 |
else |
106 |
else |
106 |
{ |
107 |
{ |
Lines 112-118
Link Here
|
112 |
else |
113 |
else |
113 |
{ |
114 |
{ |
114 |
FilePosType pos = markIdIt->second; |
115 |
FilePosType pos = markIdIt->second; |
115 |
bool success = (_fseeki64(mStream, pos, SEEK_SET) == 0); |
116 |
bool success = (fseeko(mStream, pos, SEEK_SET) == 0); |
116 |
if ( !keepMarkId ) |
117 |
if ( !keepMarkId ) |
117 |
{ |
118 |
{ |
118 |
mMarkIds.erase(markIdIt); |
119 |
mMarkIds.erase(markIdIt); |