summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--module/PluginThread.py30
-rwxr-xr-xpyLoadCore.py2
2 files changed, 13 insertions, 19 deletions
diff --git a/module/PluginThread.py b/module/PluginThread.py
index 572561eb0..d4a0ed667 100644
--- a/module/PluginThread.py
+++ b/module/PluginThread.py
@@ -106,6 +106,12 @@ class PluginThread(Thread):
f.write(dump)
f.close()
+ def clean(self, pyfile):
+ """ set thread unactive and clean pyfile """
+ pyfile.plugin.req.clean()
+ self.active = False
+ pyfile.release()
+
########################################################################
class DownloadThread(PluginThread):
@@ -166,18 +172,14 @@ class DownloadThread(PluginThread):
self.m.log.error(_("Plugin %s is missing a function.") % pyfile.pluginname)
pyfile.setStatus("failed")
pyfile.error = "Plugin does not work"
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
continue
except Abort:
self.m.log.info(_("Download aborted: %s") % pyfile.name)
pyfile.setStatus("aborted")
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
continue
except Reconnect:
@@ -207,9 +209,7 @@ class DownloadThread(PluginThread):
self.m.log.warning(_("Download failed: %(name)s | %(msg)s") % {"name": pyfile.name, "msg": msg})
pyfile.error = msg
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
continue
except error, e:
@@ -228,9 +228,7 @@ class DownloadThread(PluginThread):
self.m.log.info(_("Download aborted: %s") % pyfile.name)
pyfile.setStatus("aborted")
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
else:
pyfile.plugin.req.canContinue = False
self.queue.put(pyfile)
@@ -244,9 +242,7 @@ class DownloadThread(PluginThread):
print_exc()
self.writeDebugReport(pyfile)
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
continue
except Exception, e:
@@ -258,9 +254,7 @@ class DownloadThread(PluginThread):
print_exc()
self.writeDebugReport(pyfile)
- pyfile.plugin.req.clean()
- self.active = False
- pyfile.release()
+ self.clean(pyfile)
continue
diff --git a/pyLoadCore.py b/pyLoadCore.py
index 82900e58a..b8d192e8b 100755
--- a/pyLoadCore.py
+++ b/pyLoadCore.py
@@ -238,7 +238,7 @@ class Core(object):
self.check_file("tmp", _("folder for temporary files"), True)
tesser = self.check_install("tesseract", _("tesseract for captcha reading"), False) if os.name != "nt" else True
- self.captcha = img and tesser
+ self.captcha = tesser
self.check_file(self.config['general']['download_folder'], _("folder for downloads"), True)
self.check_file("links.txt", _("file for links"))