From 0fd093644cf14c9b689ce8d606722989df3477de Mon Sep 17 00:00:00 2001 From: James Lu Date: Wed, 23 Mar 2016 18:04:12 -0700 Subject: [PATCH] utils: don't crash when mode target is invalid --- utils.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/utils.py b/utils.py index 09366bc..7a13df7 100644 --- a/utils.py +++ b/utils.py @@ -200,12 +200,18 @@ def parseModes(irc, target, args): args = args[1:] if usermodes: log.debug('(%s) Using irc.umodes for this query: %s', irc.name, irc.umodes) - assert target in irc.users, "Unknown user %r." % target + + if target not in irc.users: + log.warning('(%s) Possible desync! Mode target %s is not in the users index.', irc.name, target) + supported_modes = irc.umodes oldmodes = irc.users[target].modes else: log.debug('(%s) Using irc.cmodes for this query: %s', irc.name, irc.cmodes) - assert target in irc.channels, "Unknown channel %r." % target + + if target not in irc.channels: + log.warning('(%s) Possible desync! Mode target %s is not in the channels index.', irc.name, target) + supported_modes = irc.cmodes oldmodes = irc.channels[target].modes res = []