Browse Source

support ios::app on win32

David Rose 17 years ago
parent
commit
360ac27188
1 changed files with 5 additions and 0 deletions
  1. 5 0
      dtool/src/dtoolutil/pandaFileStreamBuf.cxx

+ 5 - 0
dtool/src/dtoolutil/pandaFileStreamBuf.cxx

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