[Pidgin] #9626: away message is unset during login to AIM

Pidgin trac at pidgin.im
Sun Jul 5 23:15:41 EDT 2009


#9626: away message is unset during login to AIM
------------------+---------------------------------------------------------
Reporter:  tmm1   |        Type:  defect   
  Status:  new    |   Component:  libpurple
 Version:  2.5.8  |    Keywords:           
------------------+---------------------------------------------------------
 There's a race condition in the oscar prpl, where if purple_bosrights is
 called after purple_parse_locaterights, the away message set by
 locaterights is overwritten to a blank message.

 To recreate, simply:
 {{{
 acc = purple_account_new("sn", "prpl-aim");
 purple_account_set_password(acc, "pass");
 purple_account_set_status(acc, "away", TRUE, "message", "not here", NULL);
 purple_account_set_enabled(acc, U_ID, TRUE);
 }}}
 and watch the account's presence from another screen name. Half the time
 the away message will be set, and the rest of the time the screen name
 will be away but have no away message set.

 The following patch fixes the issue:
 {{{
 diff --git a/libpurple/protocols/oscar/family_locate.c
 b/libpurple/protocols/oscar/family_locate.c
 index 0646a2b..5c99dcf 100644
 --- a/libpurple/protocols/oscar/family_locate.c
 +++ b/libpurple/protocols/oscar/family_locate.c
 @@ -851,7 +853,7 @@ aim_srv_setextrainfo(OscarData *od,
         }
  #endif

 -       if (setavailmsg)
 +       if (setavailmsg && (availmsg || itmsurl))
         {
                 int availmsglen, itmsurllen;
                 ByteStream tmpbs;
 }}}

-- 
Ticket URL: <http://developer.pidgin.im/ticket/9626>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list