[Libreoffice-commits] core.git: Branch 'private/hcvcastro/preinit' - vcl/source

Henry Castro hcastro at collabora.com
Sat Sep 12 09:14:00 PDT 2015


 vcl/source/app/svmain.cxx |   11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

New commits:
commit 614c77ab7c2029a58ec3e6b3ebffd98f525d46a3
Author: Henry Castro <hcastro at collabora.com>
Date:   Sat Sep 12 12:11:43 2015 -0400

    lok: desktop terminate
    
    The tiled rendering case, it does not trigger
    terminate() function, so this causes debug assertion.
    
    Change-Id: I4a9b6398296d9150ab748a8d48868a08e7232909

diff --git a/vcl/source/app/svmain.cxx b/vcl/source/app/svmain.cxx
index 4f78c40..9b2b4e3 100644
--- a/vcl/source/app/svmain.cxx
+++ b/vcl/source/app/svmain.cxx
@@ -28,6 +28,7 @@
 #include "tools/resmgr.hxx"
 
 #include "comphelper/processfactory.hxx"
+#include "comphelper/lok.hxx"
 
 #include "unotools/syslocaleoptions.hxx"
 #include "vcl/svapp.hxx"
@@ -445,8 +446,6 @@ void DeInitVCL()
     }
     pSVData->mpDefaultWin.disposeAndClear();
 
-    DBGGUI_DEINIT_SOLARMUTEXCHECK();
-
     if ( pSVData->mpUnoWrapper )
     {
         try
@@ -454,6 +453,12 @@ void DeInitVCL()
             uno::Reference<frame::XDesktop2> const xDesktop = frame::Desktop::create(
                     comphelper::getProcessComponentContext() );
             xDesktop->addEventListener(new VCLUnoWrapperDeleter());
+
+            if (comphelper::LibreOfficeKit::isActive())
+            {
+                SAL_WARN_IF(!xDesktop.is(), "desktop.app", "No Desktop interface");
+                xDesktop->terminate();
+            }
         }
         catch (uno::Exception const&)
         {
@@ -567,6 +572,8 @@ void DeInitVCL()
     }
 
     EmbeddedFontsHelper::clearTemporaryFontFiles();
+
+    DBGGUI_DEINIT_SOLARMUTEXCHECK();
 }
 
 // only one call is allowed


More information about the Libreoffice-commits mailing list