X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..78eeb09597b4a33859ec46c18cfca601ab23e677:/src/common/file.cpp diff --git a/src/common/file.cpp b/src/common/file.cpp index c5005d886b..5d0d1bee7b 100644 --- a/src/common/file.cpp +++ b/src/common/file.cpp @@ -7,7 +7,7 @@ // Created: 29/01/98 // RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin -// 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__)