From 6140149249054880309355be30edebadab662378 Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Wed, 6 Nov 2024 16:29:28 +0100 Subject: [PATCH] Avoid panic in join_chat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes –#286. --- lib/grammers-client/src/client/chats.rs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/lib/grammers-client/src/client/chats.rs b/lib/grammers-client/src/client/chats.rs index 65563ddd..6c67e930 100644 --- a/lib/grammers-client/src/client/chats.rs +++ b/lib/grammers-client/src/client/chats.rs @@ -835,13 +835,19 @@ impl Client { &self, chat: C, ) -> Result, InvocationError> { - let chat = chat.into(); + let chat: PackedChat = chat.into(); + let channel = chat.try_to_input_channel().ok_or_else(|| { + InvocationError::Rpc(RpcError { + code: 400, + name: "CHANNEL_INVALID".to_owned(), + value: None, + caused_by: None, + }) + })?; Ok(updates_to_chat( Some(chat.id), - self.invoke(&tl::functions::channels::JoinChannel { - channel: chat.try_to_input_channel().unwrap(), - }) - .await?, + self.invoke(&tl::functions::channels::JoinChannel { channel }) + .await?, )) }