changeset 29918:e63ea24aa291

merge of '17fcb3e7ac74579122bb5259359cef56f5bbf713' and 'b721192f0b7c409b2f6d8829fc79087ee7587bfb'
author Paul Aurich <paul@darkrain42.org>
date Wed, 12 May 2010 05:21:47 +0000
parents af5a46ecfb24 (current diff) 097569720d68 (diff)
children 716d6bb38829
files
diffstat 1 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/protocols/jabber/message.c	Wed May 12 05:15:44 2010 +0000
+++ b/libpurple/protocols/jabber/message.c	Wed May 12 05:21:47 2010 +0000
@@ -1250,7 +1250,14 @@
 
 	g_free(resource);
 
-	if (!jbr || (jbr->chat_states == JABBER_CHAT_STATES_UNSUPPORTED))
+	/* We know this entity doesn't support chat states */
+	if (jbr && jbr->chat_states == JABBER_CHAT_STATES_UNSUPPORTED)
+		return 0;
+
+	/* *If* we don't have presence /and/ the buddy can't see our
+	 * presence, don't send typing notifications.
+	 */
+	if (!jbr && !(jb->subscription & JABBER_SUB_FROM))
 		return 0;
 
 	/* TODO: figure out threading */