diff options
author | Trygve Aaberge <trygveaa@gmail.com> | 2024-04-18 08:31:48 +0200 |
---|---|---|
committer | Trygve Aaberge <trygveaa@gmail.com> | 2024-04-18 21:54:10 +0200 |
commit | 57da2d338a23cc0da4230896c9c69fa8494d757a (patch) | |
tree | a880c514517e37acfd2c52935a08cd2f3dfd825f /slack | |
parent | 6b7c7ecc7cfd0ed97795cc1ea9568cc208c5c74e (diff) | |
download | wee-slack-57da2d338a23cc0da4230896c9c69fa8494d757a.tar.gz |
Check if nick is in _nicklist before removing it
If we get a channel_leave message from a user that hasn't spoken
recently in the channel and hasn't been loaded in the nicklist (because
the channel has too many members to load all of them into the nicklist),
it isn't in _nicklist so trying to pop it from there would fail.
Diffstat (limited to 'slack')
-rw-r--r-- | slack/slack_conversation.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/slack/slack_conversation.py b/slack/slack_conversation.py index d43624b..e2e5599 100644 --- a/slack/slack_conversation.py +++ b/slack/slack_conversation.py @@ -579,8 +579,9 @@ class SlackConversation(SlackBuffer): def nicklist_remove_nick(self, nick: Nick): if self.type == "im" or self.buffer_pointer is None: return - nick_pointer = self._nicklist.pop(nick) - weechat.nicklist_remove_nick(self.buffer_pointer, nick_pointer) + if nick in self._nicklist: + nick_pointer = self._nicklist.pop(nick) + weechat.nicklist_remove_nick(self.buffer_pointer, nick_pointer) def display_thread_replies(self) -> bool: if self.buffer_pointer is not None: |