]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/file.cpp
Hopefully fixed library names generated by wx-config for OS/2's PM port.
[wxWidgets.git] / src / common / file.cpp
index 925377b194b508b1c5795a2c979c32b7789cad70..9985b9d44874a06391747524add3dd733b286ef0 100644 (file)
@@ -299,7 +299,7 @@ bool wxFile::Close()
 // ----------------------------------------------------------------------------
 
 // read
 // ----------------------------------------------------------------------------
 
 // read
-size_t wxFile::Read(void *pBuf, size_t nCount)
+ssize_t wxFile::Read(void *pBuf, size_t nCount)
 {
     wxCHECK( (pBuf != NULL) && IsOpened(), 0 );
 
 {
     wxCHECK( (pBuf != NULL) && IsOpened(), 0 );
 
@@ -308,7 +308,7 @@ size_t wxFile::Read(void *pBuf, size_t nCount)
     if ( iRc == -1 )
     {
         wxLogSysError(_("can't read from file descriptor %d"), m_fd);
     if ( iRc == -1 )
     {
         wxLogSysError(_("can't read from file descriptor %d"), m_fd);
-        return (size_t)wxInvalidOffset;
+        return wxInvalidOffset;
     }
 
     return iRc;
     }
 
     return iRc;
@@ -356,7 +356,10 @@ bool wxFile::Flush()
 // seek
 wxFileOffset wxFile::Seek(wxFileOffset ofs, wxSeekMode mode)
 {
 // seek
 wxFileOffset wxFile::Seek(wxFileOffset ofs, wxSeekMode mode)
 {
-    wxASSERT( IsOpened() );
+    wxASSERT_MSG( IsOpened(), _T("can't seek on closed file") );
+    wxCHECK_MSG( ofs != wxInvalidOffset || mode != wxFromStart,
+                 wxInvalidOffset,
+                 _T("invalid absolute file offset") );
 
     int origin;
     switch ( mode ) {
 
     int origin;
     switch ( mode ) {
@@ -376,11 +379,6 @@ wxFileOffset wxFile::Seek(wxFileOffset ofs, wxSeekMode mode)
             break;
     }
 
             break;
     }
 
-    if (ofs == wxInvalidOffset)
-    {
-        wxLogSysError(_("can't seek on file descriptor %d, large files support is not enabled."), m_fd);
-        return wxInvalidOffset;
-    }
     wxFileOffset iRc = wxSeek(m_fd, ofs, origin);
     if ( iRc == wxInvalidOffset )
     {
     wxFileOffset iRc = wxSeek(m_fd, ofs, origin);
     if ( iRc == wxInvalidOffset )
     {