diff options
author | Michael Stahl <mstahl@redhat.com> | 2015-01-27 21:33:31 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-01-30 11:35:44 +0000 |
commit | 22671c1545f8bfff660acdf981d6d36bf73ded63 (patch) | |
tree | 12c5c12bc378a4ebb70b917d774a1cbe664c6c17 | |
parent | 41cebdb509c7349470a0b1766c3cdfc1449761dc (diff) |
tdf#76174: basic: lock SolarMutex in BasicScriptListener_Impl
... before calling into BASIC.
Change-Id: I51a59fe5ca9b15ff7ec509c052964523d87a9790
(cherry picked from commit a4faad707c7fb27884fff5f20e5797b160d4f320)
Reviewed-on: https://gerrit.libreoffice.org/14237
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r-- | basic/source/classes/eventatt.cxx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/basic/source/classes/eventatt.cxx b/basic/source/classes/eventatt.cxx index 3718e16de60a..2770c0b53003 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; |