summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2015-01-27 21:33:31 +0100
committerMichael Stahl <mstahl@redhat.com>2015-01-29 21:48:12 +0100
commita4faad707c7fb27884fff5f20e5797b160d4f320 (patch)
treeaf7c8a8c7bc6882c2b5655fdae14009c28c700bf
parent74df327e1ef4edf4ca07d04ae72ee052d824564f (diff)
tdf#76174: basic: lock SolarMutex in BasicScriptListener_Impl
... before calling into BASIC. Change-Id: I51a59fe5ca9b15ff7ec509c052964523d87a9790
-rw-r--r--basic/source/classes/eventatt.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/basic/source/classes/eventatt.cxx b/basic/source/classes/eventatt.cxx
index 943d96d65aa6..e67f5b3c7775 100644
--- a/basic/source/classes/eventatt.cxx
+++ b/basic/source/classes/eventatt.cxx
@@ -48,7 +48,7 @@
#include <basic/basicmanagerrepository.hxx>
#include <basic/basmgr.hxx>
-
+#include <vcl/svapp.hxx>
#include <xmlscript/xmldlg_imexp.hxx>
#include <sbunoobj.hxx>
#include <basic/sbstar.hxx>
@@ -161,12 +161,16 @@ public:
// Methods XAllListener
void BasicScriptListener_Impl::firing( const ScriptEvent& aScriptEvent ) throw ( RuntimeException, std::exception )
{
+ SolarMutexGuard g;
+
firing_impl( aScriptEvent, NULL );
}
Any BasicScriptListener_Impl::approveFiring( const ScriptEvent& aScriptEvent )
throw ( InvocationTargetException, RuntimeException, std::exception )
{
+ SolarMutexGuard g;
+
Any aRetAny;
firing_impl( aScriptEvent, &aRetAny );
return aRetAny;