diff -r 2b88f86521fb -r fa5131960dee libpurple/protocols/jabber/jingle/iceudp.c --- a/libpurple/protocols/jabber/jingle/iceudp.c Wed Feb 25 08:18:17 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/iceudp.c Wed Feb 25 09:20:20 2009 +0000 @@ -334,10 +334,14 @@ if (action == JINGLE_SESSION_INITIATE || action == JINGLE_TRANSPORT_INFO || action == JINGLE_CONTENT_ADD || action == JINGLE_TRANSPORT_REPLACE) { - JingleIceUdpCandidate *candidate = JINGLE_ICEUDP_GET_PRIVATE( - transport)->local_candidates->data; - xmlnode_set_attrib(node, "pwd", candidate->password); - xmlnode_set_attrib(node, "ufrag", candidate->username); + JingleIceUdpPrivate *icetransport = + JINGLE_ICEUDP_GET_PRIVATE(transport); + if (icetransport && icetransport->local_candidates) { + JingleIceUdpCandidate *candidate = + icetransport->local_candidates->data; + xmlnode_set_attrib(node, "pwd", candidate->password); + xmlnode_set_attrib(node, "ufrag", candidate->username); + } } if (action == JINGLE_TRANSPORT_INFO || action == JINGLE_SESSION_ACCEPT) {