Prechádzať zdrojové kódy

Disconnect slot if service listener is disconnected manually.

Sascha Zelzer 14 rokov pred
rodič
commit
3b2922290c

+ 5 - 0
Libs/PluginFramework/ctkPluginFrameworkListeners.cpp

@@ -80,6 +80,11 @@ void ctkPluginFrameworkListeners::removeServiceSlot(ctkPlugin* plugin,
       if (slot) break;
     }
   }
+
+  if (plugin)
+  {
+    disconnect(receiver, SIGNAL(destroyed(QObject*)), this, SLOT(serviceListenerDestroyed(QObject*)));
+  }
 }
 
 void ctkPluginFrameworkListeners::serviceListenerDestroyed(QObject *listener)