X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/02761f6cd478e3c2c97cf6f93442747f7b029833..db71eb0640221199170ac9ea83371c2d467fa456:/src/common/fs_inet.cpp diff --git a/src/common/fs_inet.cpp b/src/common/fs_inet.cpp index d927b9aa74..26080da987 100644 --- a/src/common/fs_inet.cpp +++ b/src/common/fs_inet.cpp @@ -40,7 +40,7 @@ public: wxTemporaryFileInputStream(const wxString& filename) : wxFileInputStream(filename), m_filename(filename) {} - ~wxTemporaryFileInputStream() + virtual ~wxTemporaryFileInputStream() { // NB: copied from wxFileInputStream dtor, we need to do it before // wxRemoveFile @@ -140,12 +140,26 @@ class wxFileSystemInternetModule : public wxModule DECLARE_DYNAMIC_CLASS(wxFileSystemInternetModule) public: + wxFileSystemInternetModule() : + wxModule(), + m_handler(NULL) + { + } + virtual bool OnInit() { - wxFileSystem::AddHandler(new wxInternetFSHandler); + m_handler = new wxInternetFSHandler; + wxFileSystem::AddHandler(m_handler); return true; } - virtual void OnExit() {} + + virtual void OnExit() + { + delete wxFileSystem::RemoveHandler(m_handler); + } + + private: + wxFileSystemHandler* m_handler; }; IMPLEMENT_DYNAMIC_CLASS(wxFileSystemInternetModule, wxModule)