# HG changeset patch # User Paul Aurich # Date 1252526199 0 # Node ID 4cb882afbd6f6617d78e68935113c07f2e915ef1 # Parent e8717ca47d25a249cef8541ec9487479b5f89520 Fix a crash when attempting to validate a JID with an invalid resource. diff -r e8717ca47d25 -r 4cb882afbd6f ChangeLog --- a/ChangeLog Tue Sep 08 22:07:21 2009 +0000 +++ b/ChangeLog Wed Sep 09 19:56:39 2009 +0000 @@ -1,5 +1,9 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul +version 2.6.3 (??/??/20??): + XMPP: + * Fix a crash when attempting to validate an invalid JID. + version 2.6.2 (09/05/2009): libpurple: * Fix --disable-avahi to actually disable it in configure, as opposed diff -r e8717ca47d25 -r 4cb882afbd6f libpurple/protocols/jabber/jutil.c --- a/libpurple/protocols/jabber/jutil.c Tue Sep 08 22:07:21 2009 +0000 +++ b/libpurple/protocols/jabber/jutil.c Wed Sep 09 19:56:39 2009 +0000 @@ -153,10 +153,9 @@ if (!jabber_resourceprep(idn_buffer, sizeof(idn_buffer))) { jabber_id_free(jid); jid = NULL; - /* goto out; */ - } - - jid->resource = g_strdup(idn_buffer); + goto out; + } else + jid->resource = g_strdup(idn_buffer); } out: diff -r e8717ca47d25 -r 4cb882afbd6f libpurple/tests/test_jabber_jutil.c --- a/libpurple/tests/test_jabber_jutil.c Tue Sep 08 22:07:21 2009 +0000 +++ b/libpurple/tests/test_jabber_jutil.c Wed Sep 09 19:56:39 2009 +0000 @@ -132,6 +132,7 @@ assert_invalid_jid("mark.doliner@gmail\\stuff.org"); assert_invalid_jid("paul@[::1]124"); assert_invalid_jid("paul@2[::1]124/as"); + assert_invalid_jid("paul@まつ.おおかみ/\x01"); /* Ensure that jabber_id_new is properly lowercasing node and domains */ assert_jid_parts("paul", "darkrain42.org", "PaUL@darkrain42.org");