[Libreoffice-commits] core.git: 2 commits - sfx2/source svx/source sw/source
Markus Mohrhard
markus.mohrhard at googlemail.com
Sun Feb 18 20:50:49 UTC 2018
sfx2/source/dialog/backingcomp.cxx | 4 +++-
svx/source/dialog/srchdlg.cxx | 2 ++
sw/source/uibase/misc/redlndlg.cxx | 2 ++
3 files changed, 7 insertions(+), 1 deletion(-)
New commits:
commit 76aea63d8055e9bb8d2edc85a739c9a48a7f8d96
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Sun Feb 18 19:03:48 2018 +0100
uitest: call base class Activate in modeless dialogs
Change-Id: I342e925a5dbc178962f720f1efc9ee001d235718
Reviewed-on: https://gerrit.libreoffice.org/49941
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
diff --git a/svx/source/dialog/srchdlg.cxx b/svx/source/dialog/srchdlg.cxx
index b9075133bad0..6a0701bb1aa0 100644
--- a/svx/source/dialog/srchdlg.cxx
+++ b/svx/source/dialog/srchdlg.cxx
@@ -614,6 +614,8 @@ void SvxSearchDialog::Activate()
m_pMatchCaseCB->Check( pSearchItem->GetExact() );
m_pJapMatchFullHalfWidthCB->Check( !pSearchItem->IsMatchFullHalfWidthForms() );
}
+
+ SfxModelessDialog::Activate();
}
diff --git a/sw/source/uibase/misc/redlndlg.cxx b/sw/source/uibase/misc/redlndlg.cxx
index 05a9aa77265f..3ac0dbd537aa 100644
--- a/sw/source/uibase/misc/redlndlg.cxx
+++ b/sw/source/uibase/misc/redlndlg.cxx
@@ -112,10 +112,12 @@ void SwModelessRedlineAcceptDlg::Activate()
if (!bMod)
pSh->ResetModified();
pImplDlg->Init();
+ SfxModelessDialog::Activate();
return;
}
+ SfxModelessDialog::Activate();
pImplDlg->Activate();
}
commit 3ed222f6497cf6b2b54d90a4de80fe2db9130f59
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Sun Feb 18 18:21:04 2018 +0100
don't use the global mutex for UI stuff
This leads to deadlocks if one thread is using the process factory
while holding the SolarMutex and another thread is calling the
BackingComp::getTypes method.
Change-Id: Ib4750aa1ebbfbf4f8dcd09ec2a218202450f4928
Reviewed-on: https://gerrit.libreoffice.org/49940
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
diff --git a/sfx2/source/dialog/backingcomp.cxx b/sfx2/source/dialog/backingcomp.cxx
index 76086dc404c7..8d4ee36b4dd4 100644
--- a/sfx2/source/dialog/backingcomp.cxx
+++ b/sfx2/source/dialog/backingcomp.cxx
@@ -90,6 +90,8 @@ private:
/** the owner frame of this component. */
css::uno::Reference< css::frame::XFrame > m_xFrame;
+ osl::Mutex m_aTypeProviderMutex;
+
public:
explicit BackingComp();
@@ -235,7 +237,7 @@ css::uno::Sequence< css::uno::Type > SAL_CALL BackingComp::getTypes()
if (!pTypeCollection)
{
/* GLOBAL SAFE { */
- ::osl::MutexGuard aGlobalLock(::osl::Mutex::getGlobalMutex());
+ ::osl::MutexGuard aGlobalLock(m_aTypeProviderMutex);
// Control these pointer again ... it can be, that another instance will be faster then this one!
if (!pTypeCollection)
{
More information about the Libreoffice-commits
mailing list