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
-~----------~----~----~----~------~----~------~--~---

Reply via email to