// For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
-#if wxUSE_WEBVIEW && (wxUSE_WEBVIEW_WEBKIT || wxUSE_WEBVIEW_IE)
+#if wxUSE_WEBVIEW
 
 #if defined(__BORLANDC__)
     #pragma hdrstop
     m_fileSystem = new wxFileSystem();
 }
 
+wxWebViewArchiveHandler::~wxWebViewArchiveHandler()
+{
+    wxDELETE(m_fileSystem);
+}
+
 wxFSFile* wxWebViewArchiveHandler::GetFile(const wxString &uri)
 {
     //If there is a fragment at the end of the path then we need to strip it
             return NULL;
 
         wxString fspath = "file:" + 
-                          EscapeFileNameCharsInURL(path.substr(doubleslash + 2));
+                          EscapeFileNameCharsInURL(path.substr(doubleslash + 2).c_str());
         return m_fileSystem->OpenFile(fspath);
     }
     //Otherwise we need to extract the protocol
             return NULL;
 
         wxString fspath = "file:" + 
-                          EscapeFileNameCharsInURL(mainpath.substr(doubleslash + 2))
+                          EscapeFileNameCharsInURL(mainpath.substr(doubleslash + 2).c_str())
                           + "#" + protocol +":" + archivepath;
         return m_fileSystem->OpenFile(fspath);
     }
 }
 
-#endif // wxUSE_WEBVIEW && (wxUSE_WEBVIEW_WEBKIT || wxUSE_WEBVIEW_IE)
+#endif // wxUSE_WEBVIEW