diff --git a/dtool/src/dtoolutil/pandaFileStreamBuf.cxx b/dtool/src/dtoolutil/pandaFileStreamBuf.cxx index 1d6f9586aa..0e859c5ab0 100644 --- a/dtool/src/dtoolutil/pandaFileStreamBuf.cxx +++ b/dtool/src/dtoolutil/pandaFileStreamBuf.cxx @@ -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);