From d917499d1faf8084a6b1b65956044f9854265345 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Tue, 28 Jun 2022 19:14:37 +0300 Subject: [PATCH] Fix check for using double puppeted leaves --- mautrix_telegram/abstract_user.py | 1 + mautrix_telegram/portal.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/mautrix_telegram/abstract_user.py b/mautrix_telegram/abstract_user.py index 8f2e4cd3..1a423891 100644 --- a/mautrix_telegram/abstract_user.py +++ b/mautrix_telegram/abstract_user.py @@ -598,6 +598,7 @@ class AbstractUser(ABC): self.log.debug("Updating channel info with data fetched by Telethon") await portal.update_info(self, chan) await portal.invite_to_matrix(self.mxid) + # TODO create portal? async def update_message(self, original_update: UpdateMessage) -> None: update, sender, portal = await self.get_message_details(original_update) diff --git a/mautrix_telegram/portal.py b/mautrix_telegram/portal.py index b1440a11..85af29a8 100644 --- a/mautrix_telegram/portal.py +++ b/mautrix_telegram/portal.py @@ -1046,7 +1046,7 @@ class Portal(DBPortal, BasePortal): await self.main_intent.kick_user(self.mxid, puppet.mxid, kick_message) except MForbidden as e: self.log.warning(f"Failed to kick {puppet.mxid}: {e}") - elif not await self.az.state_store.is_joined(self.mxid, puppet.intent_for(self).mxid): + elif await self.az.state_store.is_joined(self.mxid, puppet.intent_for(self).mxid): await puppet.intent_for(self).leave_room(self.mxid, extra_content=puppet_extra_content) if user: await user.unregister_portal(*self.tgid_full)