complete the Exception's list when catching JID error:

- Twisted JID constructor raises not only jid.InvalidFormat but also RuntimeError and AttributeError
This commit is contained in:
souliane 2015-12-15 13:30:47 +01:00
commit a6a967b2f0
5 changed files with 6 additions and 6 deletions

View file

@ -151,7 +151,7 @@ class CommandExport(object):
if not _jid.user or not _jid.host:
raise jid.InvalidFormat
_jid = _jid.userhostJID()
except (jid.InvalidFormat, RuntimeError):
except (RuntimeError, jid.InvalidFormat, AttributeError):
log.info(u"invalid target ignored: %s" % (target,))
continue
process_prot = ExportCommandProtocol(self, _jid, options, profile)

View file

@ -139,7 +139,7 @@ class Exp_Parrot(object):
link_left_jid = jid.JID(mess_data["unparsed"].strip())
if not link_left_jid.user or not link_left_jid.host:
raise jid.InvalidFormat
except jid.InvalidFormat:
except (RuntimeError, jid.InvalidFormat, AttributeError):
txt_cmd.feedBack("Can't activate Parrot mode for invalid jid", mess_data, profile)
return False

View file

@ -296,7 +296,7 @@ class TextCommands(object):
target_jid = jid.JID(entity)
if not target_jid.user or not target_jid.host:
raise jid.InvalidFormat
except (jid.InvalidFormat, RuntimeError):
except (RuntimeError, jid.InvalidFormat, AttributeError):
self.feedBack(_("Invalid jid, can't whois"), mess_data, profile)
return False

View file

@ -562,7 +562,7 @@ class XEP_0045(object):
entity_jid = jid.JID(jid_s).userhostJID()
assert(entity_jid.user)
assert(entity_jid.host)
except (IndexError, jid.InvalidFormat, AssertionError):
except (RuntimeError, jid.InvalidFormat, AttributeError, IndexError, AssertionError):
feedback = _(u"You must provide a valid JID to ban, like in '/ban contact@example.net'")
self.host.plugins[C.TEXT_CMDS].feedBack(feedback, mess_data, profile)
return False
@ -594,7 +594,7 @@ class XEP_0045(object):
entity_jid = jid.JID(jid_s).userhostJID()
assert(entity_jid.user)
assert(entity_jid.host)
except (IndexError, jid.InvalidFormat, AssertionError):
except (RuntimeError, jid.InvalidFormat, AttributeError, IndexError, AssertionError):
feedback = _(u"You must provide a valid JID to affiliate, like in '/affiliate contact@example.net member'")
self.host.plugins[C.TEXT_CMDS].feedBack(feedback, mess_data, profile)
return False

View file

@ -782,7 +782,7 @@ class XEP_0065(object):
if not all((host, jid, port)):
raise KeyError
jid_ = jid.JID(jid_)
except (StopIteration, KeyError, RuntimeError, jid.InvalidFormat):
except (StopIteration, KeyError, RuntimeError, jid.InvalidFormat, AttributeError):
log.warning(u"Invalid proxy data received from {}".format(proxy.full()))
notFound(server)