Author: andar
Revision: 5091
Log:
Fix event handler de/registering
Diff:
Modified: trunk/deluge/ui/client.py
===================================================================
--- trunk/deluge/ui/client.py 2009-04-19 13:46:11 UTC (rev 5090)
+++ trunk/deluge/ui/client.py 2009-04-19 19:50:12 UTC (rev 5091)
@@ -321,10 +321,12 @@
if event not in self.__factory.event_handlers:
# This is a new event to handle, so we need to tell the daemon
# that we're interested in receiving this type of event
- self.event_handlers[event] = []
+ self.__factory.event_handlers[event] = []
self.call("daemon.set_event_interest", [event])
- self.__factory.event_handlers[event].append(handler)
+ # Only add the handler if it's not already registered
+ if handler not in self.__factory.event_handlers[event]:
+ self.__factory.event_handlers[event].append(handler)
def deregister_event_handler(self, event, handler):
"""
@@ -334,8 +336,8 @@
:param handler: function, the function registered
"""
- if event in self.event_handlers and handler in
self.event_handlers[event]:
- self.event_handlers[event].remove(handler)
+ if event in self.__factory.event_handlers and handler in
self.__factory.event_handlers[event]:
+ self.__factory.event_handlers[event].remove(handler)
def __rpcError(self, error_data):
"""
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"deluge-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/deluge-commit?hl=en
-~----------~----~----~----~------~----~------~--~---