Tag: cws_dev300_odbmacros3
User: fs      
Date: 2008-07-29 08:24:41+0000
Modified:
   dba/dbaccess/source/core/dataaccess/documenteventexecutor.cxx

Log:
 #i76128# lock the solar mutex before dispatching the script URL ... :(

File Changes:

Directory: /dba/dbaccess/source/core/dataaccess/
================================================

File [changed]: documenteventexecutor.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/core/dataaccess/documenteventexecutor.cxx?r1=1.1.2.2&r2=1.1.2.3
Delta lines:  +8 -1
-------------------
--- documenteventexecutor.cxx   2008-07-28 06:26:05+0000        1.1.2.2
+++ documenteventexecutor.cxx   2008-07-29 08:24:38+0000        1.1.2.3
@@ -7,7 +7,7 @@
 *
 * $RCSfile: documenteventexecutor.cxx,v $
 *
-* $Revision: 1.1.2.2 $
+* $Revision: 1.1.2.3 $
 *
 * This file is part of OpenOffice.org.
 *
@@ -43,6 +43,8 @@
 #include <comphelper/namedvaluecollection.hxx>
 #include <cppuhelper/weakref.hxx>
 #include <tools/diagnose_ex.h>
+#include <vcl/svapp.hxx>
+#include <vos/mutex.hxx>
 
 //........................................................................
 namespace dbaccess
@@ -95,6 +97,11 @@
         static void lcl_dispatchScriptURL_throw( DocumentEventExecutor_Data& 
_rDocExecData,
             const ::rtl::OUString& _rScriptURL )
         {
+            // unfortunately, executing a script can trigger all kind of 
complex stuff, and unfortunately, not
+            // every component involved into this properly cares for thread 
safety. To be on the safe side,
+            // we lock the solar mutex here.
+            ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+
             Reference< XModel > xDocument( _rDocExecData.xDocument.get(), 
UNO_QUERY_THROW );
 
             Reference< XController > xController( 
xDocument->getCurrentController() );




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to