diff options
author | Damien Churchill <damoc@gmail.com> | 2009-12-10 15:31:27 +0000 |
---|---|---|
committer | Damien Churchill <damoc@gmail.com> | 2009-12-10 15:31:27 +0000 |
commit | fcbaa1f4f2ae0aed3b678c1362d82ad92c6b3f07 (patch) | |
tree | 0da5278371524488a05034f018e923c971cd8fa0 | |
parent | c716f55dda54d5ecaed0d3fbdc983b8b7a04117d (diff) | |
download | deluge-fcbaa1f4f2ae0aed3b678c1362d82ad92c6b3f07.tar.gz deluge-fcbaa1f4f2ae0aed3b678c1362d82ad92c6b3f07.tar.bz2 deluge-fcbaa1f4f2ae0aed3b678c1362d82ad92c6b3f07.zip |
fix the upload_plugin method as it wasn't upgraded to deluge-rpc spec
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | deluge/core/core.py | 11 |
2 files changed, 16 insertions, 4 deletions
@@ -12,7 +12,8 @@ ==== GtkUI ==== * Attempt to register as the default magnet uri handler in GNOME on startup - * Properly show 100.00% and reduce number of progress bar updates during a torrent creation + * Properly show 100.00% and reduce number of progress bar updates during a + torrent creation * Fix crash in Windows when creating a torrent * Add button to Other preferences to associate magnet links with Deluge @@ -23,7 +24,11 @@ * Fix #1085 only use ints for specific options to prevent unhandled exception ==== Execute ==== - * Use the move_completed path if it is different to the save path in the completed event. + * Use the move_completed path if it is different to the save path + in the completed event. + +==== Core ===== + * Fix the upload_plugin rpc method (was still using XML-RPC stuff) === Deluge 1.2.0_rc4 (24 November 2009) === ==== Core ==== diff --git a/deluge/core/core.py b/deluge/core/core.py index 6b163eb65..bd767f14e 100644 --- a/deluge/core/core.py +++ b/deluge/core/core.py @@ -655,14 +655,21 @@ class Core(component.Component): self.add_torrent_file(os.path.split(target)[1], open(target, "rb").read(), options) @export - def upload_plugin(self, filename, plugin_data): + def upload_plugin(self, filename, filedump): """This method is used to upload new plugins to the daemon. It is used when connecting to the daemon remotely and installing a new plugin on the client side. 'plugin_data' is a xmlrpc.Binary object of the file data, ie, plugin_file.read()""" + try: + filedump = base64.decodestring(filedump) + except Exception, e: + log.error("There was an error decoding the filedump string!") + log.exception(e) + return + f = open(os.path.join(deluge.configmanager.get_config_dir(), "plugins", filename), "wb") - f.write(plugin_data.data) + f.write(filedump) f.close() component.get("CorePluginManager").scan_for_plugins() |