Merge branch '1.3-stable' of deluge-torrent.org:deluge into 1.3-stable

This commit is contained in:
Andrew Resch 2012-09-18 18:00:02 -07:00
commit ec3d698a14
4 changed files with 22 additions and 5 deletions

View File

@ -108,6 +108,14 @@ class Core(CorePluginBase):
else: else:
save_path = info["save_path"] save_path = info["save_path"]
# getProcessOutputAndValue requires args to be str
if isinstance(torrent_name, unicode):
torrent_id = torrent_id.encode("utf-8", "ignore")
if isinstance(torrent_name, unicode):
torrent_name = torrent_name.encode("utf-8", "ignore")
if isinstance(save_path, unicode):
save_path = save_path.encode("utf-8", "ignore")
log.debug("[execute] Running commands for %s", event) log.debug("[execute] Running commands for %s", event)
def log_error(result, command): def log_error(result, command):

View File

@ -373,6 +373,10 @@ Please see the details below for more information."), details=traceback.format_e
if self.config["show_connection_manager_on_start"]: if self.config["show_connection_manager_on_start"]:
# XXX: We need to call a simulate() here, but this could be a bug in twisted # XXX: We need to call a simulate() here, but this could be a bug in twisted
try:
reactor._simulate()
except AttributeError:
# twisted < 12
reactor.simulate() reactor.simulate()
self.connectionmanager.show() self.connectionmanager.show()

View File

@ -39,7 +39,12 @@ from urlparse import urljoin, urlparse
from tempfile import mkstemp from tempfile import mkstemp
from twisted.internet import defer, threads from twisted.internet import defer, threads
from twisted.web import error from twisted.web.error import PageRedirect
try:
from twisted.web.resource import NoResource, ForbiddenResource
except ImportError:
# twisted 8
from twisted.web.error import NoResource, ForbiddenResource
from deluge.component import Component from deluge.component import Component
from deluge.configmanager import get_config_dir from deluge.configmanager import get_config_dir
@ -235,7 +240,7 @@ class TrackerIcons(Component):
error_msg = f.getErrorMessage() error_msg = f.getErrorMessage()
log.debug("Error downloading page: %s", error_msg) log.debug("Error downloading page: %s", error_msg)
d = f d = f
if f.check(error.PageRedirect): if f.check(PageRedirect):
# Handle redirect errors # Handle redirect errors
location = urljoin(self.host_to_url(host), error_msg.split(" to ")[1]) location = urljoin(self.host_to_url(host), error_msg.split(" to ")[1])
self.redirects[host] = url_to_host(location) self.redirects[host] = url_to_host(location)
@ -375,14 +380,14 @@ class TrackerIcons(Component):
error_msg = f.getErrorMessage() error_msg = f.getErrorMessage()
log.debug("Error downloading icon: %s", error_msg) log.debug("Error downloading icon: %s", error_msg)
d = f d = f
if f.check(error.PageRedirect): if f.check(PageRedirect):
# Handle redirect errors # Handle redirect errors
location = urljoin(self.host_to_url(host), error_msg.split(" to ")[1]) location = urljoin(self.host_to_url(host), error_msg.split(" to ")[1])
d = self.download_icon([(location, extension_to_mimetype(location.rpartition('.')[2]))] + icons, host) d = self.download_icon([(location, extension_to_mimetype(location.rpartition('.')[2]))] + icons, host)
if not icons: if not icons:
d.addCallbacks(self.on_download_icon_complete, self.on_download_icon_fail, d.addCallbacks(self.on_download_icon_complete, self.on_download_icon_fail,
callbackArgs=(host,), errbackArgs=(host,)) callbackArgs=(host,), errbackArgs=(host,))
elif f.check(error.NoResource, error.ForbiddenResource) and icons: elif f.check(NoResource, ForbiddenResource) and icons:
d = self.download_icon(icons, host) d = self.download_icon(icons, host)
elif f.check(NoIconsError, HTMLParseError): elif f.check(NoIconsError, HTMLParseError):
# No icons, try favicon.ico as an act of desperation # No icons, try favicon.ico as an act of desperation

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB