Author: johnnyg
Revision: 6079
Log:
Rewrote call to use maybeDeferred (this handles methods that return
deferreds).
Fixes #1114.
Diff:
Modified: branches/1.2_RC/ChangeLog
===================================================================
--- branches/1.2_RC/ChangeLog 2010-01-05 14:07:16 UTC (rev 6078)
+++ branches/1.2_RC/ChangeLog 2010-01-07 00:45:47 UTC (rev 6079)
@@ -11,6 +11,7 @@
==== GtkUI ====
* Fix #1104, #735 use path.utf-8 if available
+ * Fix #1114 test active port not working in classic mode
==== Console ====
* Fix #1115 not showing usage for the 'debug' command
Modified: branches/1.2_RC/deluge/ui/client.py
===================================================================
--- branches/1.2_RC/deluge/ui/client.py 2010-01-05 14:07:16 UTC (rev 6078)
+++ branches/1.2_RC/deluge/ui/client.py 2010-01-07 00:45:47 UTC (rev 6079)
@@ -422,22 +422,15 @@
def call(self, method, *args, **kwargs):
#log.debug("call: %s %s %s", method, args, kwargs)
- d = defer.Deferred()
+ import copy
+
try:
m = self.__daemon.rpcserver.get_object_method(method)
except Exception, e:
log.exception(e)
- d.errback(e)
- return d
-
- try:
- import copy
- result = m(*copy.deepcopy(args), **copy.deepcopy(kwargs))
- except Exception, e:
- d.errback(e)
+ return defer.fail(e)
else:
- d.callback(result)
- return d
+ return defer.maybeDeferred(m, *copy.deepcopy(args),
**copy.deepcopy(kwargs))
def register_event_handler(self, event, handler):
"""
Modified: trunk/deluge/ui/client.py
===================================================================
--- trunk/deluge/ui/client.py 2010-01-05 14:07:16 UTC (rev 6078)
+++ trunk/deluge/ui/client.py 2010-01-07 00:45:47 UTC (rev 6079)
@@ -422,22 +422,15 @@
def call(self, method, *args, **kwargs):
#log.debug("call: %s %s %s", method, args, kwargs)
- d = defer.Deferred()
+ import copy
+
try:
m = self.__daemon.rpcserver.get_object_method(method)
except Exception, e:
log.exception(e)
- d.errback(e)
- return d
-
- try:
- import copy
- result = m(*copy.deepcopy(args), **copy.deepcopy(kwargs))
- except Exception, e:
- d.errback(e)
+ return defer.fail(e)
else:
- d.callback(result)
- return d
+ return defer.maybeDeferred(m, *copy.deepcopy(args),
**copy.deepcopy(kwargs))
def register_event_handler(self, event, handler):
"""
--
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.