pidgin: 0b212d0b: I got a crash happened at dereferencing ...
khc at pidgin.im
khc at pidgin.im
Sat Nov 15 15:25:24 EST 2008
-----------------------------------------------------------------
Revision: 0b212d0b7f8c5aab4b8e6bae9dadfe410620f552
Ancestor: ab5ea3be38a8eba7531174ceccca3023e12880f6
Author: khc at pidgin.im
Date: 2008-11-15T17:37:44
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/0b212d0b7f8c5aab4b8e6bae9dadfe410620f552
Modified files:
libpurple/protocols/jabber/message.c
ChangeLog:
I got a crash happened at dereferencing chat when it's NULL, I think this
happened as I got disconnected, but unfortunately I forgot to copy my
debug log.
#3 <signal handler called>
#4 0x00007fb8103f43a2 in jabber_message_parse (js=0x45b5090, packet=0x4426790)
at message.c:615
#5 0x00007fb8103ea75f in jabber_process_packet (js=0x45b5090,
packet=0x7fff2338fec0) at jabber.c:215
#6 0x00007fb8103f691e in jabber_parser_element_end_libxml (
user_data=0x45b5090, element_name=0x4675e2c "message", prefix=0x0,
namespace=0x4675c7a "jabber:client") at parser.c:116
#7 0x00007fb815c05fa3 in ?? () from /usr/lib/libxml2.so.2
#8 0x00007fb815c12e38 in xmlParseChunk () from /usr/lib/libxml2.so.2
#9 0x00007fb8103f6ae0 in jabber_parser_process (js=0x45b5090,
buf=0x7fb8106101c0 "='20081110T22:23:49'/></message><message from='devel at conference.pidgin.im/darkrain42' to='khc at hxbc.us/Home' type='groupchat' id='purpled03bd02a'><body>2.5.8, I think?</body><html xmlns='http://jabber."..., len=1440)
at parser.c:209
#10 0x00007fb8103eb092 in jabber_recv_cb (data=0x441afb0, source=25,
condition=PURPLE_INPUT_READ) at jabber.c:481
#11 0x000000000046ddc5 in pidgin_io_invoke (source=0x438af30,
condition=G_IO_IN, data=0x4430d10) at gtkeventloop.c:78
#12 0x00007fb815f5cd3b in g_main_context_dispatch ()
-------------- next part --------------
============================================================
--- libpurple/protocols/jabber/message.c ac733ca657c7cce25ae8c5fafc2d0bf9a1ee055a
+++ libpurple/protocols/jabber/message.c 30fd387ec6b98d85de83688fe30247481a9911c0
@@ -612,7 +612,7 @@ void jabber_message_parse(JabberStream *
if (jid) {
chat = jabber_chat_find(js, jid->node, jid->domain);
- conv = chat->conv;
+ if (chat) conv = chat->conv;
}
jabber_id_free(jid);
@@ -644,7 +644,7 @@ void jabber_message_parse(JabberStream *
/* note: if there were no smileys in the incoming message, or
if receiving custom smileys is turned off, smiley_refs will
be NULL */
- for (; smiley_refs ; smiley_refs = g_list_delete_link(smiley_refs, smiley_refs)) {
+ for (; conv && smiley_refs ; smiley_refs = g_list_delete_link(smiley_refs, smiley_refs)) {
JabberSmileyRef *ref = (JabberSmileyRef *) smiley_refs->data;
const gchar *cid = ref->cid;
const gchar *alt = ref->alt;
More information about the Commits
mailing list