summaryrefslogtreecommitdiff
path: root/toolkit
diff options
context:
space:
mode:
authorFrank Schönheit <fs@openoffice.org>2001-03-01 12:34:41 +0000
committerFrank Schönheit <fs@openoffice.org>2001-03-01 12:34:41 +0000
commit7aee681b5590a14d16985864a84b6b214b000e64 (patch)
tree2fcc9568e0ca4438ee40634de53115f86e31f157 /toolkit
parent5495a63a63a5a0879ef1ac2a5a79ad376cb1c85a (diff)
#83561# surrender: lock the SolarMutex when creating the peer
Diffstat (limited to 'toolkit')
-rw-r--r--toolkit/source/controls/unocontrol.cxx17
1 files changed, 15 insertions, 2 deletions
diff --git a/toolkit/source/controls/unocontrol.cxx b/toolkit/source/controls/unocontrol.cxx
index e24a13dc4350..08beceda5aa7 100644
--- a/toolkit/source/controls/unocontrol.cxx
+++ b/toolkit/source/controls/unocontrol.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: unocontrol.cxx,v $
*
- * $Revision: 1.6 $
+ * $Revision: 1.7 $
*
- * last change: $Author: mm $ $Date: 2001-02-22 18:20:52 $
+ * last change: $Author: fs $ $Date: 2001-03-01 13:34:41 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -103,6 +103,13 @@
#include <toolkit/helper/property.hxx>
#include <toolkit/helper/servicenames.hxx>
+#ifndef _SV_SVAPP_HXX
+#include <vcl/svapp.hxx>
+#endif
+#ifndef _VOS_MUTEX_HXX_
+#include <vos/mutex.hxx>
+#endif
+
WorkWindow* lcl_GetDefaultWindow()
{
static WorkWindow* pW = NULL;
@@ -366,6 +373,12 @@ void UnoControl::propertiesChange( const ::com::sun::star::uno::Sequence< ::com:
// 82300 - 12/21/00 - FS
if (bNeedNewPeer && xParent.is())
{
+ NAMESPACE_VOS(OGuard) aVclGuard( Application::GetSolarMutex() );
+ // and now this is the final withdrawal:
+ // With 83561, I have no other idea than locking the SolarMutex here ....
+ // I really hate the fact that VCL is not theadsafe ....
+ // 01.03.2001 - FS
+
// Funktioniert beim Container nicht!
mxPeer->dispose();
mxPeer.clear();