diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-07-10 12:23:10 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-07-13 20:15:06 +0000 |
commit | 1dd48f927affcd394499bd945d2ce78f229471ee (patch) | |
tree | 9739b05bb625645db4521ae388abc1a532a46dbb /cui | |
parent | 5647eb6f8ef5828ce14973a91946d5d7cdfeae30 (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.cxx | 3 |
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(); |