diff options
author | Elliott Sales de Andrade <qulogic@pidgin.im> | 2009-05-04 00:02:04 +0000 |
---|---|---|
committer | Elliott Sales de Andrade <qulogic@pidgin.im> | 2009-05-04 00:02:04 +0000 |
commit | c236362587dff7cc627ffedab082442a38879cd0 (patch) | |
tree | ba987fcbccf080d5f78ee135d859dd96b2ce26e1 | |
parent | 7eb9a3d898ab6726b8a1c9c8308a093094858355 (diff) | |
parent | e69ccb0853235b839e7967e811e72cd07a4bd89d (diff) | |
download | pidgin-c236362587dff7cc627ffedab082442a38879cd0.tar.gz |
merge of '90b1c4ff001e07c76df28278c8fb22580ddeee68'
and 'b7a82e0ce3c122047b1f04a1c9dc8012e6150291'
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | libpurple/protocols/jabber/message.c | 42 |
2 files changed, 30 insertions, 22 deletions
@@ -20,6 +20,10 @@ version 2.5.6 (??/??/2009): * Fix some errors about the friendly name changing too fast caused by MSN/Yahoo integration buddies. + XMPP: + * Less likely to pop up a new conversation window in disregard of + the "Hide new IM conversations" preference. + Yahoo: * Fix a crash when sending very long messages. @@ -692,13 +696,13 @@ version 2.2.1 (09/29/2007): version 2.2.0 (09/13/2007): http://developer.pidgin.im/query?status=closed&milestone=2.2.0 - Libpurple: + libpurple: * New protocol plugin: MySpaceIM (Jeff Connelly, Google Summer of Code) * XMPP enhancements. See - http://www.adiumx.com/blog/2007/07/soc-xmpp-update.php (Andreas + http://www.adiumx.com/blog/2007/07/soc-xmpp-update.php (Andreas Monitzer, Google Summer of Code for Adium) - * Certificate management. Libpurple will validate certificates on + * Certificate management. libpurple will validate certificates on SSL-encrypted protocols (William Ehlhardt, Google Summer of Code) * Some adjustments were made to fix sending messages when using the MSN HTTP method. (Laszlo Pandy) diff --git a/libpurple/protocols/jabber/message.c b/libpurple/protocols/jabber/message.c index b0abd03275..cce394e9ac 100644 --- a/libpurple/protocols/jabber/message.c +++ b/libpurple/protocols/jabber/message.c @@ -633,24 +633,28 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) purple_debug_info("jabber", "found %d smileys\n", g_list_length(smiley_refs)); - if (jm->type == JABBER_MESSAGE_GROUPCHAT) { - JabberID *jid = jabber_id_new(jm->from); - JabberChat *chat = NULL; - - if (jid) { - chat = jabber_chat_find(js, jid->node, jid->domain); - if (chat) conv = chat->conv; - } - - jabber_id_free(jid); - } else { - conv = - purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, - who, account); - if (!conv) { - /* we need to create the conversation here */ - conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, - account, who); + if (smiley_refs) { + if (jm->type == JABBER_MESSAGE_GROUPCHAT) { + JabberID *jid = jabber_id_new(jm->from); + JabberChat *chat = NULL; + + if (jid) { + chat = jabber_chat_find(js, jid->node, jid->domain); + if (chat) conv = chat->conv; + } + + jabber_id_free(jid); + } else if (jm->type == JABBER_MESSAGE_NORMAL || + jm->type == JABBER_MESSAGE_CHAT) { + conv = + purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, + who, account); + if (!conv) { + /* we need to create the conversation here */ + conv = + purple_conversation_new(PURPLE_CONV_TYPE_IM, + account, who); + } } } @@ -682,7 +686,7 @@ void jabber_message_parse(JabberStream *js, xmlnode *packet) TRUE)) { const JabberData *data = jabber_data_find_remote_by_cid(cid); - /* if data is already known, we add write it immediatly */ + /* if data is already known, we write it immediatly */ if (data) { purple_debug_info("jabber", "data is already known\n"); |