X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..3e822cd8d0bdf04cd2c7a3dddff61dcc211f7439:/src/common/stream.cpp diff --git a/src/common/stream.cpp b/src/common/stream.cpp index 8061deeb7b..435b60f266 100644 --- a/src/common/stream.cpp +++ b/src/common/stream.cpp @@ -576,7 +576,7 @@ wxFileOffset wxStreamBuffer::Seek(wxFileOffset pos, wxSeekMode mode) } if (diff < 0 || diff > last_access) return wxInvalidOffset; - size_t int_diff = (size_t)diff; + size_t int_diff = wx_truncate_cast(size_t, diff); wxCHECK_MSG( (wxFileOffset)int_diff == diff, wxInvalidOffset, wxT("huge file not supported") ); SetIntPosition(int_diff); return diff; @@ -603,7 +603,7 @@ wxFileOffset wxStreamBuffer::Seek(wxFileOffset pos, wxSeekMode mode) } else { - size_t int_diff = (size_t)diff; + size_t int_diff = wx_truncate_cast(size_t, diff); wxCHECK_MSG( (wxFileOffset)int_diff == diff, wxInvalidOffset, wxT("huge file not supported") ); SetIntPosition(int_diff); return pos; @@ -660,7 +660,13 @@ wxStreamBase::~wxStreamBase() size_t wxStreamBase::GetSize() const { wxFileOffset length = GetLength(); - return length == wxInvalidOffset ? 0 : (size_t)length; + if ( length == wxInvalidOffset ) + return 0; + + const size_t len = wx_truncate_cast(size_t, length); + wxASSERT_MSG( len == length + size_t(0), _T("large files not supported") ); + + return len; } wxFileOffset wxStreamBase::OnSysSeek(wxFileOffset WXUNUSED(seek), wxSeekMode WXUNUSED(mode)) @@ -673,20 +679,6 @@ wxFileOffset wxStreamBase::OnSysTell() const return wxInvalidOffset; } -#if WXWIN_COMPATIBILITY_2_2 - -wxStreamError wxStreamBase::LastError() const -{ - return m_lasterror; -} - -size_t wxStreamBase::StreamSize() const -{ - return GetSize(); -} - -#endif // WXWIN_COMPATIBILITY_2_2 - // ---------------------------------------------------------------------------- // wxInputStream // ---------------------------------------------------------------------------- @@ -994,7 +986,7 @@ size_t wxCountingOutputStream::OnSysWrite(const void *WXUNUSED(buffer), wxFileOffset wxCountingOutputStream::OnSysSeek(wxFileOffset pos, wxSeekMode mode) { - ssize_t new_pos = (ssize_t)pos; + ssize_t new_pos = wx_truncate_cast(ssize_t, pos); switch ( mode ) {