\membersection{wxStreamBase::IsOk}\label{wxstreambaseisok}
 
-\constfunc{bool}{IsOk}{\void}
+\constfunc{virtual bool}{IsOk}{\void}
 
 Returns true if no error occurred on the stream.
 
 
 
     // error testing
     wxStreamError GetLastError() const { return m_lasterror; }
-    bool IsOk() const { return GetLastError() == wxSTREAM_NO_ERROR; }
+    virtual bool IsOk() const { return GetLastError() == wxSTREAM_NO_ERROR; }
     bool operator!() const { return !IsOk(); }
 
     // reset the stream state
 
     wxFileOffset GetLength() const;
 
     bool Ok() const { return IsOk(); }
-    bool IsOk() const { return m_file->IsOpened(); }
+    virtual bool IsOk() const { return (wxStreamBase::IsOk() && m_file->IsOpened()); }
     bool IsSeekable() const { return m_file->GetKind() == wxFILE_KIND_DISK; }
 
 protected:
     wxFileOffset GetLength() const;
 
     bool Ok() const { return IsOk(); }
-    bool IsOk() const { return m_file->IsOpened(); }
+    virtual bool IsOk() const { return (wxStreamBase::IsOk() && m_file->IsOpened()); }
     bool IsSeekable() const { return m_file->GetKind() == wxFILE_KIND_DISK; }
 
 protected:
     wxFileOffset GetLength() const;
 
     bool Ok() const { return IsOk(); }
-    bool IsOk() const { return m_file->IsOpened(); }
+    virtual bool IsOk() const { return (wxStreamBase::IsOk() && m_file->IsOpened()); }
     bool IsSeekable() const { return m_file->GetKind() == wxFILE_KIND_DISK; }
 
 protected:
     wxFileOffset GetLength() const;
 
     bool Ok() const { return IsOk(); }
-    bool IsOk() const { return m_file->IsOpened(); }
+    virtual bool IsOk() const { return (wxStreamBase::IsOk() && m_file->IsOpened()); }
     bool IsSeekable() const { return m_file->GetKind() == wxFILE_KIND_DISK; }
 
 protected: