# HG changeset patch # User Mike Ruprecht # Date 1212869766 0 # Node ID ee028c73d3e201761c19d000a3d47b2683e70cd0 # Parent bdc09d3164dffbc65da862118cad7e1b9554f0f0 Fix crash when receiving a session-initiate ack for a nonexistent session. diff -r bdc09d3164df -r ee028c73d3e2 libpurple/protocols/jabber/jingle.c --- a/libpurple/protocols/jabber/jingle.c Sat Jun 07 19:57:32 2008 +0000 +++ b/libpurple/protocols/jabber/jingle.c Sat Jun 07 20:16:06 2008 +0000 @@ -992,9 +992,18 @@ { const char *from = xmlnode_get_attrib(packet, "from"); JingleSession *session = jabber_jingle_session_find_by_jid(js, from); - PurpleMedia *media = session->media; + PurpleMedia *media; GList *contents; + if (!session) { + /* respond with an error here */ + purple_debug_error("jingle", "Received session-initiate ack" + " to nonexistent session\n"); + return; + } + + media = session->media; + if (!strcmp(xmlnode_get_attrib(packet, "type"), "error")) { purple_media_got_hangup(media); return;