libpurple/purpleprotocolconversation.c

changeset 43056
49358391e695
parent 42884
5a7d425c9d1b
child 43104
f87ae4effec7
--- a/libpurple/purpleprotocolconversation.c	Sun Nov 10 00:55:40 2024 -0600
+++ b/libpurple/purpleprotocolconversation.c	Sun Nov 10 02:29:31 2024 -0600
@@ -39,13 +39,11 @@
 gboolean
 purple_protocol_conversation_implements_create_conversation(PurpleProtocolConversation *protocol)
 {
-	PurpleProtocolConversation *protocol_conversation = NULL;
 	PurpleProtocolConversationInterface *iface = NULL;
 
 	g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE);
 
-	protocol_conversation = PURPLE_PROTOCOL_CONVERSATION(protocol);
-	iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol_conversation);
+	iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol);
 
 	if(iface->get_create_conversation_details == NULL) {
 		return FALSE;
@@ -140,13 +138,11 @@
 gboolean
 purple_protocol_conversation_implements_leave_conversation(PurpleProtocolConversation *protocol)
 {
-	PurpleProtocolConversation *protocol_conversation = NULL;
 	PurpleProtocolConversationInterface *iface = NULL;
 
 	g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE);
 
-	protocol_conversation = PURPLE_PROTOCOL_CONVERSATION(protocol);
-	iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol_conversation);
+	iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol);
 
 	if(iface->leave_conversation_async == NULL) {
 		return FALSE;
@@ -213,6 +209,26 @@
 	return FALSE;
 }
 
+gboolean
+purple_protocol_conversation_implements_send_message(PurpleProtocolConversation *protocol)
+{
+	PurpleProtocolConversationInterface *iface = NULL;
+
+	g_return_val_if_fail(PURPLE_IS_PROTOCOL_CONVERSATION(protocol), FALSE);
+
+	iface = PURPLE_PROTOCOL_CONVERSATION_GET_IFACE(protocol);
+
+	if(iface->send_message_async == NULL) {
+		return FALSE;
+	}
+
+	if(iface->send_message_finish == NULL) {
+		return FALSE;
+	}
+
+	return TRUE;
+}
+
 void
 purple_protocol_conversation_send_message_async(PurpleProtocolConversation *protocol,
                                                 PurpleConversation *conversation,

mercurial