# HG changeset patch # User Etan Reisner # Date 1205981990 0 # Node ID eee94c5446a9a3d10a4a8ecb108ec08410aa300f # Parent 4bcd3868a136ca68b49b9e6935e42974972bb0c5 If the default value of a list-single or list-multi data forms field is NULL ( or ) don't stick NULL in the selected list (this will crash in the g_list_find_custom call later). diff -r 4bcd3868a136 -r eee94c5446a9 ChangeLog --- a/ChangeLog Wed Mar 19 05:06:14 2008 +0000 +++ b/ChangeLog Thu Mar 20 02:59:50 2008 +0000 @@ -16,6 +16,7 @@ * Fix a crash when starting if you have a Zephyr account * Increase XMPP ping timeout to 120 seconds, to prevent poor network connections from timing out unnecessarily. + * Don't crash on XMPP forms with empty default values. Pidgin: * Remove a workaround for older versions gstreamer that was causing diff -r 4bcd3868a136 -r eee94c5446a9 libpurple/protocols/jabber/xdata.c --- a/libpurple/protocols/jabber/xdata.c Wed Mar 19 05:06:14 2008 +0000 +++ b/libpurple/protocols/jabber/xdata.c Thu Mar 20 02:59:50 2008 +0000 @@ -285,7 +285,10 @@ for(valuenode = xmlnode_get_child(fn, "value"); valuenode; valuenode = xmlnode_get_next_twin(valuenode)) { - selected = g_list_prepend(selected, xmlnode_get_data(valuenode)); + char *data = xmlnode_get_data(valuenode); + if (data != NULL) { + selected = g_list_prepend(selected, data); + } } for(optnode = xmlnode_get_child(fn, "option"); optnode;