[Libreoffice-commits] core.git: Branch 'aoo/trunk' - cui/source

Herbert Dürr hdu at apache.org
Fri Aug 9 09:08:19 PDT 2013


 cui/source/options/optupdt.cxx |    9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

New commits:
commit bd363910bb80e61805672430de7870e1583b0052
Author: Herbert Dürr <hdu at apache.org>
Date:   Fri Aug 9 15:03:18 2013 +0000

    #i122818# fix crash in online-update-check when no application is active
    
    Closing all application windows and retaining access to the application menu
    is only possible on MacOSX. The DispatchProvider used for the update check
    seems to depend on having an active application window. Maybe it is possible
    to get the update check working without it but this patch doesn't attempt
    that, it prevent further escalation such as crashes.
    
    Fixed by: Herbert Duerr
    Debugged by: Oliver-Rainer Wittmann, Herbert Duerr
    Found by: Frantisek Erben

diff --git a/cui/source/options/optupdt.cxx b/cui/source/options/optupdt.cxx
index 54517b5..e379215 100644
--- a/cui/source/options/optupdt.cxx
+++ b/cui/source/options/optupdt.cxx
@@ -371,13 +371,14 @@ IMPL_LINK( SvxOnlineUpdateTabPage, CheckNowHdl_Impl, PushButton *, EMPTYARG )
         uno::Reference< frame::XDispatchProvider > xDispatchProvider(
             xDesktop->getCurrentFrame(), uno::UNO_QUERY );
 
-        uno::Reference< frame::XDispatch > xDispatch = xDispatchProvider->queryDispatch(aURL, rtl::OUString(), 0);
+        uno::Reference< frame::XDispatch > xDispatch;
+        if( xDispatchProvider.is() )
+            xDispatch = xDispatchProvider->queryDispatch(aURL, rtl::OUString(), 0);
 
         if( xDispatch.is() )
-        {
             xDispatch->dispatch(aURL, uno::Sequence< beans::PropertyValue > ());
-            UpdateLastCheckedText();
-        }
+
+        UpdateLastCheckedText();
     }
     catch( const uno::Exception& e )
     {


More information about the Libreoffice-commits mailing list