From bd39debb48aeb93beef00939de9d966d32932c1c Mon Sep 17 00:00:00 2001 From: Valentin Lorentz Date: Sat, 30 Dec 2017 17:07:53 +0100 Subject: [PATCH] User: Simplify owner-checking logic, and fix crash when @hostmask remove is called by an unregistered user. --- plugins/User/plugin.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/plugins/User/plugin.py b/plugins/User/plugin.py index 59cf742d2..8ba41b702 100644 --- a/plugins/User/plugin.py +++ b/plugins/User/plugin.py @@ -341,12 +341,9 @@ class User(callbacks.Plugin): pass if not user.checkPassword(password) and \ not user.checkHostmask(msg.prefix): - try: + if ircdb.checkCapability(msg.prefix, 'owner'): u = ircdb.users.getUser(msg.prefix) - except KeyError: - irc.error(conf.supybot.replies.incorrectAuthentication(), - Raise=True) - if not u._checkCapability('owner'): + else: irc.error(conf.supybot.replies.incorrectAuthentication(), Raise=True) try: @@ -382,8 +379,7 @@ class User(callbacks.Plugin): hostmask = msg.prefix if not user.checkPassword(password) and \ not user.checkHostmask(msg.prefix): - u = ircdb.users.getUser(msg.prefix) - if not u._checkCapability('owner'): + if not ircdb.checkCapability(msg.prefix, 'owner'): irc.error(conf.supybot.replies.incorrectAuthentication()) return try: