changeset 20d133dd6988 in /home/hg/repos/gajim
details:http://hg.gajim.org/gajim?cmd=changeset;node=20d133dd6988
description: prevent traceback when check update from ftp. see
https://trac.gajim.org/ticket/7023#comment:13
diffstat:
plugins/plugin_installer/plugin_installer.py | 52 +++++++++++++++------------
1 files changed, 28 insertions(+), 24 deletions(-)
diffs (62 lines):
diff -r 8a94c1a25462 -r 20d133dd6988
plugins/plugin_installer/plugin_installer.py
--- a/plugins/plugin_installer/plugin_installer.py Thu Nov 10 23:19:39
2011 +0300
+++ b/plugins/plugin_installer/plugin_installer.py Fri Nov 11 21:55:46
2011 +0300
@@ -81,30 +81,34 @@
@log_calls('PluginInstallerPlugin')
def check_update(self):
def _run():
- to_update = []
- con = ftplib.FTP_TLS(ftp.server)
- con.login()
- con.prot_p()
- con.cwd('plugins')
- plugins_dirs = con.nlst()
- for dir_ in plugins_dirs:
- try:
- con.retrbinary('RETR %s/manifest.ini' % dir_,
- ftp.handleDownload)
- except Exception, error:
- if str(error).startswith('550'):
- continue
- ftp.config.readfp(io.BytesIO(ftp.buffer_.getvalue()))
- local_version = ftp.get_plugin_version(ftp.config.get('info',
- 'name'))
- if local_version:
- local = convert_version_to_list(local_version)
- remote = convert_version_to_list(ftp.config.get('info',
- 'version'))
- if remote > local:
- to_update.append(ftp.config.get('info', 'name'))
- con.quit()
- gobject.idle_add(self.warn_update, to_update)
+ try:
+ to_update = []
+ con = ftplib.FTP_TLS(ftp.server)
+ con.login()
+ con.prot_p()
+ con.cwd('plugins')
+ plugins_dirs = con.nlst()
+ for dir_ in plugins_dirs:
+ try:
+ con.retrbinary('RETR %s/manifest.ini' % dir_,
+ ftp.handleDownload)
+ except Exception, error:
+ if str(error).startswith('550'):
+ continue
+ ftp.config.readfp(io.BytesIO(ftp.buffer_.getvalue()))
+ local_version = ftp.get_plugin_version(ftp.config.get(
+ 'info', 'name'))
+ if local_version:
+ local = convert_version_to_list(local_version)
+ remote = convert_version_to_list(ftp.config.get('info',
+ 'version'))
+ if remote > local:
+ to_update.append(ftp.config.get('info', 'name'))
+ con.quit()
+ gobject.idle_add(self.warn_update, to_update)
+ except Exception, e:
+ WarningDialog(_('Ftp error'), str(e),
+ gajim.interface.roster.window)
ftp = Ftp(self)
ftp.run = _run
ftp.start()
_______________________________________________
Commits mailing list
[email protected]
http://lists.gajim.org/cgi-bin/listinfo/commits