fixed wxStreamBuffer::Tell() to return at least sometimes a valid result

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2002-05-24 22:09:13 +00:00
parent d2d50a41fc
commit 915a955caf

View File

@ -613,9 +613,21 @@ off_t wxStreamBuffer::Seek(off_t pos, wxSeekMode mode)
off_t wxStreamBuffer::Tell() const
{
off_t pos = m_stream->OnSysTell();
if ( pos == wxInvalidOffset )
return wxInvalidOffset;
off_t pos;
// only ask the stream for position if we have a real stream and not a
// dummy one which we created ourselves, otherwise we'd call
// wxStream::OnSysTell() which would always return wxInvalidOffset
if ( !m_destroystream )
{
pos = m_stream->OnSysTell();
if ( pos == wxInvalidOffset )
return wxInvalidOffset;
}
else // no associated stream
{
pos = 0;
}
pos += GetIntPosition();