]> git.saurik.com Git - wxWidgets.git/commitdiff
fixes crashes with embedded controls in toolbars after toolbar destruction, code...
authorStefan Csomor <csomor@advancedconcepts.ch>
Sat, 5 May 2012 05:32:19 +0000 (05:32 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Sat, 5 May 2012 05:32:19 +0000 (05:32 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/osx/carbon/toolbar.cpp

index f0576260c5311d9889ba8e392a4cfa6046864263..0f3944c373dfb2b7729a7ee06088f3811f0171bf 100644 (file)
@@ -932,6 +932,15 @@ wxToolBar::~wxToolBar()
     if ( !m_macToolbar )
         return;
 
+    // it might already have been uninstalled due to a previous call to Destroy, but in case
+    // wasn't, do so now, otherwise redraw events may occur for deleted objects
+    bool ownToolbarInstalled = false;
+    MacTopLevelHasNativeToolbar( &ownToolbarInstalled );
+    if (ownToolbarInstalled)
+    {
+        MacUninstallNativeToolbar();
+    }
+
     CFIndex count = CFGetRetainCount( m_macToolbar ) ;
     // Leopard seems to have one refcount more, so we cannot check reliably at the moment
     if ( UMAGetSystemVersion() < 0x1050 )