]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/file.cpp
fix for hot keys in menu items (patch 1013082)
[wxWidgets.git] / src / common / file.cpp
index c5005d886be961998adb51fbbbbaff22c4264dea..5d0d1bee7bc1fda2abbc5fee45ecd3d9d3d9a9be 100644 (file)
@@ -7,7 +7,7 @@
 // Created:     29/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// Licence:     wxWidgets licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /*
@@ -345,6 +345,13 @@ bool wxFile::Open(const wxChar *szFileName, OpenMode mode, int accessMode)
             break;
     }
 
+#ifdef __WINDOWS__
+    // only read/write bits for "all" are supported by this function under
+    // Windows, and VC++ 8 returns EINVAL if any other bits are used in
+    // accessMode, so clear them as they have at best no effect anyhow
+    accessMode &= wxS_IRUSR | wxS_IWUSR;
+#endif // __WINDOWS__
+
     int fd = wxOpen( szFileName, flags ACCESS(accessMode));
 #endif
     if ( fd == -1 )
@@ -414,10 +421,10 @@ size_t wxFile::Write(const void *pBuf, size_t nCount)
     wxCHECK( (pBuf != NULL) && IsOpened(), 0 );
 
 #ifdef __WXWINCE__
-    DWORD bytesRead = 0;
+    DWORD bytesWritten = 0;
     int iRc = 0;
-    if (WriteFile((HANDLE) m_fd, pBuf, (DWORD) nCount, & bytesRead, NULL))
-        iRc = bytesRead;
+    if (WriteFile((HANDLE) m_fd, pBuf, (DWORD) nCount, & bytesWritten, NULL))
+        iRc = bytesWritten;
     else
         iRc = -1;
 #elif defined(__MWERKS__)