# HG changeset patch # User Luke Schierer # Date 1054957336 0 # Node ID f8bee920b14e77c0505647b0f46263b295aff1da # Parent 5419c37a6b0cdcec981e940eb1cc63b1f5f29ddc [gaim-migrate @ 6211] Matthew Hall (mthz) writes: " In server.c, "plugin_event(event_buddy_idle, gc, b->name);" gets fired to the plugins BEFORE the call to "gaim_blist_update_buddy_idle(b, idle);" is made a few lines later to update the the buddy struct's idle member. So, if a plugin catches event_buddy_idle and attempts to figure out the buddy's idle time, it will not be correct (in some cases when one first signs on, it will even be completely blank, as it is still zeroed). As far as I can tell, there is nothing wrong with reversing the order of the calls. Attached to this is a patch for the latest CVS... as of 4-9-03 Noon." because he put the patch in the bugs tracker, it took me this long to find it. patches should be in the patch tracker. committer: Tailor Script diff -r 5419c37a6b0c -r f8bee920b14e src/server.c --- a/src/server.c Sat Jun 07 02:43:30 2003 +0000 +++ b/src/server.c Sat Jun 07 03:42:16 2003 +0000 @@ -1064,6 +1064,8 @@ gaim_blist_save(); } + gaim_blist_update_buddy_idle(b, idle); + if (!b->idle && idle) { gaim_pounce_execute(gc->account, b->name, GAIM_POUNCE_IDLE); gaim_event_broadcast(event_buddy_idle, gc, b->name); @@ -1075,7 +1077,6 @@ system_log(log_unidle, gc, b, OPT_LOG_BUDDY_IDLE); } - gaim_blist_update_buddy_idle(b, idle); gaim_blist_update_buddy_evil(b, evil); if ((b->uc & UC_UNAVAILABLE) && !(type & UC_UNAVAILABLE)) {