]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/versioncontrol/versioncontrolobserver.cpp
SVN_SILENT: minor coding style fix (Sebastian likes spaces :-))
[dolphin.git] / src / versioncontrol / versioncontrolobserver.cpp
index aea60b28d86a3021233af190ff31160fc4652a98..9e52d1f5126c24f9be16be020d3c5fefd5d34086 100644 (file)
@@ -75,9 +75,16 @@ VersionControlObserver::~VersionControlObserver()
     if (m_updateItemStatesThread != 0) {
         disconnect(m_updateItemStatesThread, SIGNAL(finished()),
                    this, SLOT(applyUpdatedItemStates()));
-        m_updateItemStatesThread->deleteWhenFinished();
+        if (m_updateItemStatesThread->isFinished()) {
+            delete m_updateItemStatesThread;
+        } else {
+            m_updateItemStatesThread->deleteWhenFinished();
+        }
         m_updateItemStatesThread = 0;
     }
+
+    m_plugin->disconnect();
+    m_plugin = 0;
 }
 
 QList<QAction*> VersionControlObserver::contextMenuActions(const KFileItemList& items) const
@@ -211,7 +218,7 @@ void VersionControlObserver::updateItemStates()
 {
     Q_ASSERT(m_plugin != 0);
     if (m_updateItemStatesThread == 0) {
-        m_updateItemStatesThread = new UpdateItemStatesThread(this);
+        m_updateItemStatesThread = new UpdateItemStatesThread();
         connect(m_updateItemStatesThread, SIGNAL(finished()),
                 this, SLOT(applyUpdatedItemStates()));
     }