Handle locked channel being deleted

This commit is contained in:
Zeva Rose 2022-04-19 12:02:07 -06:00
parent 8a197a841d
commit b8c64bae31

View file

@ -18,9 +18,15 @@ async def _unlock(channel: GuildChannel, lock: Lock, logger: Logger) -> None:
if overwrite and lock.original_perms: if overwrite and lock.original_perms:
overwrite.allow = lock.original_perms.allow overwrite.allow = lock.original_perms.allow
overwrite.deny = lock.original_perms.deny overwrite.deny = lock.original_perms.deny
try:
await channel.edit_permission(overwrite, reason="Automatic unlock") await channel.edit_permission(overwrite, reason="Automatic unlock")
except Exception:
logger.debug("Locked channel deleted, ignoring error")
elif overwrite and not lock.original_perms: elif overwrite and not lock.original_perms:
try:
await channel.delete_permission(target=overwrite, reason="Automatic unlock") await channel.delete_permission(target=overwrite, reason="Automatic unlock")
except Exception:
logger.debug("Locked channel deleted, ignoring error")
else: else:
logger.debug("Permission neither exists not existed") logger.debug("Permission neither exists not existed")
lock.active = False lock.active = False