diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx index f67c5644f6c5..cf7005b10ee7 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();