Index: deluge/ui/signalreceiver.py =================================================================== --- deluge/ui/signalreceiver.py (revision 2735) +++ deluge/ui/signalreceiver.py (working copy) @@ -135,7 +135,7 @@ log.warning("Unable to call callback for signal %s", signal) except KeyError: - log.debug("There are no callbacks registered for this signal..") + log.debug("There are no callbacks registered for signal '%s'", signal) def connect_to_signal(self, signal, callback): """Connect to a signal""" Index: deluge/core/signalmanager.py =================================================================== --- deluge/core/signalmanager.py (revision 2735) +++ deluge/core/signalmanager.py (working copy) @@ -62,12 +62,14 @@ self.clients[uri] = xmlrpclib.ServerProxy(uri) def emit(self, signal, *data): - for client in self.clients.values(): - gobject.idle_add(self._emit, client, signal, *data) + for uri in self.clients: + gobject.idle_add(self._emit, uri, signal, *data) - def _emit(self, client, signal, *data): + def _emit(self, uri, signal, *data): + client = self.clients[uri] try: client.emit_signal(signal, *data) except (socket.error, Exception), e: log.warning("Unable to emit signal to client %s: %s", client, e) - + del self.clients[uri] +