|
|
@@ -618,6 +618,11 @@ write_chars_raw(const char *start, size_t length) {
|
|
|
ppos.QuadPart = _ppos;
|
|
|
overlapped.Offset = ppos.LowPart;
|
|
|
overlapped.OffsetHigh = ppos.HighPart;
|
|
|
+
|
|
|
+ if (_open_mode & ios::app) {
|
|
|
+ overlapped.Offset = -1;
|
|
|
+ overlapped.OffsetHigh = -1;
|
|
|
+ }
|
|
|
|
|
|
DWORD bytes_written = 0;
|
|
|
BOOL success = WriteFile(_handle, start, length, &bytes_written, &overlapped);
|