# HG changeset patch # User Paul Aurich # Date 1242712174 0 # Node ID ed5aec1cff447514533ae14a7f0ed540516b8546 # Parent b18c6ab86e67486386d39a2d324c54b557114e31 Fix a NULL deref if the resource has gone offline by the time we're parsing this reply. diff -r b18c6ab86e67 -r ed5aec1cff44 libpurple/protocols/jabber/buddy.c --- a/libpurple/protocols/jabber/buddy.c Tue May 19 03:48:18 2009 +0000 +++ b/libpurple/protocols/jabber/buddy.c Tue May 19 05:49:34 2009 +0000 @@ -1485,18 +1485,19 @@ the resource getting unidle */ if (resource && buddy_name) { jbr = jabber_buddy_find_resource(jb, resource); - - if (jbr->idle) { - if (sec) { - jbr->idle = time(NULL) - sec; - } else { - jbr->idle = 0; - } - - if (jbr == - jabber_buddy_find_resource(jb, NULL)) { - purple_prpl_got_user_idle(js->gc->account, - buddy_name, jbr->idle, jbr->idle); + if (jbr) { + if (jbr->idle) { + if (sec) { + jbr->idle = time(NULL) - sec; + } else { + jbr->idle = 0; + } + + if (jbr == + jabber_buddy_find_resource(jb, NULL)) { + purple_prpl_got_user_idle(js->gc->account, + buddy_name, jbr->idle, jbr->idle); + } } } }