Author: af
Date: Thu Apr  4 11:44:36 2013
New Revision: 1464475

URL: http://svn.apache.org/r1464475
Log:
i121420: Avoid assertion when broadcasting context changes while frame is being 
destroyed.

Modified:
    
openoffice/branches/sidebar/main/sfx2/source/sidebar/ContextChangeBroadcaster.cxx

Modified: 
openoffice/branches/sidebar/main/sfx2/source/sidebar/ContextChangeBroadcaster.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/branches/sidebar/main/sfx2/source/sidebar/ContextChangeBroadcaster.cxx?rev=1464475&r1=1464474&r2=1464475&view=diff
==============================================================================
--- 
openoffice/branches/sidebar/main/sfx2/source/sidebar/ContextChangeBroadcaster.cxx
 (original)
+++ 
openoffice/branches/sidebar/main/sfx2/source/sidebar/ContextChangeBroadcaster.cxx
 Thu Apr  4 11:44:36 2013
@@ -93,9 +93,10 @@ void ContextChangeBroadcaster::Broadcast
     if (rsContextName.getLength() == 0)
         return;
     
-    if ( ! rxFrame.is())
+    if ( ! rxFrame.is() || ! rxFrame->getController().is())
     {
-        OSL_ENSURE(false, "Activate called with invalid frame");
+        // Frame is (probably) being deleted.  Broadcasting context
+        // changes is not necessary anymore.
         return;
     }
     
@@ -116,6 +117,8 @@ void ContextChangeBroadcaster::Broadcast
 
 OUString ContextChangeBroadcaster::GetModuleName (const 
cssu::Reference<css::frame::XFrame>& rxFrame)
 {
+    if ( ! rxFrame.is() || ! rxFrame->getController().is())
+        return OUString();
     OUString sModuleName;
     try
     {


Reply via email to