made wxFFile a bit more safe: don't crash when Tell() and Length() are called on closed file (patch 811425)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2004-02-07 15:44:40 +00:00
parent 8cf8a85ea8
commit de2ce07c7a
2 changed files with 8 additions and 1 deletions

View File

@ -86,7 +86,8 @@ public:
// get current file length
size_t Length() const;
// simple accessors
// simple accessors: note that Eof() and Error() may only be called if
// IsOpened()!
// is file opened?
bool IsOpened() const { return m_fp != NULL; }
// is end of file reached?

View File

@ -206,6 +206,9 @@ bool wxFFile::Seek(long ofs, wxSeekMode mode)
size_t wxFFile::Tell() const
{
wxCHECK_MSG( IsOpened(), (size_t)-1,
_T("wxFFile::Tell(): file is closed!") );
long rc = ftell(m_fp);
if ( rc == -1 )
{
@ -218,6 +221,9 @@ size_t wxFFile::Tell() const
size_t wxFFile::Length() const
{
wxCHECK_MSG( IsOpened(), (size_t)-1,
_T("wxFFile::Length(): file is closed!") );
wxFFile& self = *(wxFFile *)this; // const_cast
size_t posOld = Tell();