Mercurial > pidgin.yaz
changeset 26994:ed5aec1cff44
Fix a NULL deref if the resource has gone offline by the time we're parsing this reply.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Tue, 19 May 2009 05:49:34 +0000 |
parents | b18c6ab86e67 |
children | 56460ebd1558 |
files | libpurple/protocols/jabber/buddy.c |
diffstat | 1 files changed, 13 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- 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); + } } } }