diff options
| author | Peter Penz <[email protected]> | 2009-12-07 22:37:11 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2009-12-07 22:37:11 +0000 |
| commit | 1c4fddb06e92b52194b5ed009860b6cf22675852 (patch) | |
| tree | aa8f77f1c5ad1c1c2b7e7b038d49e9403cce148c /src/versioncontrol | |
| parent | 1b05d108a108c6f1d5a718620fc18341ec07a19e (diff) | |
fix possible crash when the signal finished() has been emitted asynchronously
BUG: 213985
svn path=/trunk/KDE/kdebase/apps/; revision=1060029
Diffstat (limited to 'src/versioncontrol')
| -rw-r--r-- | src/versioncontrol/versioncontrolobserver.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/versioncontrol/versioncontrolobserver.cpp b/src/versioncontrol/versioncontrolobserver.cpp index 9e52d1f51..a5e509055 100644 --- a/src/versioncontrol/versioncontrolobserver.cpp +++ b/src/versioncontrol/versioncontrolobserver.cpp @@ -178,6 +178,12 @@ void VersionControlObserver::verifyDirectory() void VersionControlObserver::applyUpdatedItemStates() { + if (m_plugin == 0) { + // The signal finished() has been emitted, but the thread has been marked + // as invalid in the meantime. Just ignore the signal in this case. + return; + } + if (!m_updateItemStatesThread->retrievedItems()) { // ignore m_silentUpdate for an error message emit errorMessage(i18nc("@info:status", "Update of version information failed.")); |
