summaryrefslogtreecommitdiffstats
path: root/module
diff options
context:
space:
mode:
authorGravatar RaNaN <Mast3rRaNaN@hotmail.de> 2010-09-12 18:14:47 +0200
committerGravatar RaNaN <Mast3rRaNaN@hotmail.de> 2010-09-12 18:14:47 +0200
commit0310d19cc3558943101d5daf62f578cdcf7d78d4 (patch)
treef32a064f409690278d158f7bd593ee6d7740c347 /module
parentspeedmanager time fix (diff)
downloadpyload-0310d19cc3558943101d5daf62f578cdcf7d78d4.tar.xz
couldn't connect to host fix
Diffstat (limited to 'module')
-rw-r--r--module/PluginThread.py22
1 files changed, 19 insertions, 3 deletions
diff --git a/module/PluginThread.py b/module/PluginThread.py
index b7f4806e2..ec4b3108e 100644
--- a/module/PluginThread.py
+++ b/module/PluginThread.py
@@ -21,6 +21,7 @@
from Queue import Queue
from threading import Thread
from time import sleep
+from time import time
from time import strftime
from traceback import print_exc, format_exc
from pprint import pformat
@@ -213,11 +214,26 @@ class DownloadThread(PluginThread):
code, msg = e
- if code in (7,52,56):
+ if code in (7,52,56,28):
self.m.log.warning(_("Couldn't connect to host waiting 1 minute and retry."))
- sleep(60)
- self.queue.put(pyfile)
+ wait = time() + 60
+ while time() < wait:
+ sleep(1)
+ if pyfile.abort:
+ break
+
+ if pyfile.abort:
+ self.m.log.info(_("Download aborted: %s") % pyfile.name)
+ pyfile.setStatus("aborted")
+
+ pyfile.plugin.req.clean()
+ self.active = False
+ pyfile.release()
+ else:
+ self.queue.put(pyfile)
+
continue
+
else:
print "pycurl error", code, msg
if self.m.core.debug: