From 1c4fddb06e92b52194b5ed009860b6cf22675852 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Mon, 7 Dec 2009 22:37:11 +0000 Subject: [PATCH] fix possible crash when the signal finished() has been emitted asynchronously BUG: 213985 svn path=/trunk/KDE/kdebase/apps/; revision=1060029 --- src/versioncontrol/versioncontrolobserver.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/versioncontrol/versioncontrolobserver.cpp b/src/versioncontrol/versioncontrolobserver.cpp index 9e52d1f512..a5e509055e 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."));