]> git.saurik.com Git - wxWidgets.git/commitdiff
Make destructors of COM interface classes virtual.
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 12 Jul 2013 14:12:35 +0000 (14:12 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 12 Jul 2013 14:12:35 +0000 (14:12 +0000)
This is needed to at least silence g++ warnings but may actually even fix a
real problem as these classes can be inherited from and are deleted via a
pointer (to "this" itself, in Release() implementation).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/msw/webview_ie.h

index e51ec3e03d0e846dd49878495b81f748eeac7099..20a84fdf2ed190026e5c1d32f02b50d8812ce2a3 100644 (file)
@@ -221,7 +221,7 @@ protected:
 
 public:
     VirtualProtocol(wxSharedPtr<wxWebViewHandler> handler);
-    ~VirtualProtocol() {}
+    virtual ~VirtualProtocol() {}
 
     //IUnknown
     DECLARE_IUNKNOWN_METHODS;
@@ -256,7 +256,8 @@ class ClassFactory : public IClassFactory
 {
 public:
     ClassFactory(wxSharedPtr<wxWebViewHandler> handler) : m_handler(handler) 
-    { AddRef(); }
+        { AddRef(); }
+    virtual ~ClassFactory() {}
 
     wxString GetName() { return m_handler->GetName(); }
 
@@ -286,7 +287,7 @@ class DocHostUIHandler : public wxIDocHostUIHandler
 {
 public:
     DocHostUIHandler(wxWebView* browser) { m_browser = browser; }
-    ~DocHostUIHandler() {};
+    virtual ~DocHostUIHandler() {}
 
     virtual HRESULT wxSTDCALL ShowContextMenu(DWORD dwID, POINT *ppt,
                                               IUnknown *pcmdtReserved,