diff --git a/include/sfx2/templdlg.hxx b/include/sfx2/templdlg.hxx index 25b152aee92c..96a03dfdc2f0 100644 --- a/include/sfx2/templdlg.hxx +++ b/include/sfx2/templdlg.hxx @@ -85,7 +85,7 @@ class SFX2_DLLPUBLIC SfxTemplatePanelControl : public DockingWindow { public: SfxTemplatePanelControl (SfxBindings* pBindings, Window* pParentWindow); - ~SfxTemplatePanelControl (void); + virtual ~SfxTemplatePanelControl(); virtual void Update(); virtual void DataChanged( const DataChangedEvent& _rDCEvt ); diff --git a/sfx2/source/inc/templdgi.hxx b/sfx2/source/inc/templdgi.hxx index 8a4dfdc09a0d..f064bba49301 100644 --- a/sfx2/source/inc/templdgi.hxx +++ b/sfx2/source/inc/templdgi.hxx @@ -276,7 +276,7 @@ public: TYPEINFO(); SfxCommonTemplateDialog_Impl( SfxBindings* pB, Window*, bool ); - ~SfxCommonTemplateDialog_Impl(); + virtual ~SfxCommonTemplateDialog_Impl(); DECL_LINK( MenuSelectHdl, Menu * ); diff --git a/sfx2/source/sidebar/SidebarDockingWindow.cxx b/sfx2/source/sidebar/SidebarDockingWindow.cxx index 259123dcca31..1fb9f0a1a029 100644 --- a/sfx2/source/sidebar/SidebarDockingWindow.cxx +++ b/sfx2/source/sidebar/SidebarDockingWindow.cxx @@ -66,6 +66,12 @@ SidebarDockingWindow::~SidebarDockingWindow (void) void SidebarDockingWindow::DoDispose (void) { + Reference xComponent (static_cast(mpSidebarController.get()), UNO_QUERY); + mpSidebarController.clear(); + if (xComponent.is()) + { + xComponent->dispose(); + } }