[Libreoffice-commits] core.git: Branch 'libreoffice-6-1' - cui/source
Miklos Vajna
vmiklos at collabora.co.uk
Thu Jun 28 15:13:40 UTC 2018
cui/source/options/personalization.cxx | 6 ++++++
1 file changed, 6 insertions(+)
New commits:
commit ea08ffc92d84e944a143902f9cd280370986a781
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Thu Jun 28 11:43:35 2018 +0200
tdf#117866 cui personalization: fix a possible race
The case when the thread is re-scheduled exactly after checking for
m_bExecute but before taking the solar mutex.
(cherry picked from commit f4c73f90da2a2c31f0d29572180aa97e10c3dbad)
Change-Id: I494c123a6225da60407391771622208c055ae49b
Reviewed-on: https://gerrit.libreoffice.org/56593
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
index 7b4cf6807170..216bc6e8e935 100644
--- a/cui/source/options/personalization.cxx
+++ b/cui/source/options/personalization.cxx
@@ -99,7 +99,13 @@ SelectPersonaDialog::~SelectPersonaDialog()
void SelectPersonaDialog::dispose()
{
if (m_pSearchThread.is())
+ {
+ // Release the solar mutex, so the thread is not affected by the race
+ // when it's after the m_bExecute check but before taking the solar
+ // mutex.
+ SolarMutexReleaser aReleaser;
m_pSearchThread->join();
+ }
m_pEdit.clear();
m_pSearchButton.clear();
More information about the Libreoffice-commits
mailing list