summaryrefslogtreecommitdiff
path: root/cui
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2016-07-10 12:23:10 +0200
committerCaolán McNamara <caolanm@redhat.com>2016-07-13 20:15:06 +0000
commit1dd48f927affcd394499bd945d2ce78f229471ee (patch)
tree9739b05bb625645db4521ae388abc1a532a46dbb /cui
parent5647eb6f8ef5828ce14973a91946d5d7cdfeae30 (diff)
make sure that the thread has joined before disposing UI elements
See e.g. http://crashreport.libreoffice.org/stats/crash_details/80884848-16e7-4512-be4a-74c53bfce34b#allthreads The thread can run while the UI elements have already been disposed. The StopExecute call is not enough to prevent that from happening. Reviewed-on: https://gerrit.libreoffice.org/27087 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> (cherry picked from commit 4ebbb996ac159f57e0730c938667535af148cae1) Change-Id: Iab4209776e1403a6520c106f3521476ee50848a4 Reviewed-on: https://gerrit.libreoffice.org/27183 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'cui')
-rw-r--r--cui/source/options/personalization.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
index b752f30ae44e..55f04f6623a9 100644
--- a/cui/source/options/personalization.cxx
+++ b/cui/source/options/personalization.cxx
@@ -107,6 +107,9 @@ SelectPersonaDialog::~SelectPersonaDialog()
void SelectPersonaDialog::dispose()
{
+ if (m_rSearchThread.is())
+ m_rSearchThread->join();
+
m_pEdit.clear();
m_pSearchButton.clear();
m_pProgressLabel.clear();