[Pidgin] #2486: Away message and profile occasionally do not display

Pidgin trac at pidgin.im
Sun Sep 2 18:20:35 EDT 2007


#2486: Away message and profile occasionally do not display
---------------------------+------------------------------------------------
  Reporter:  drquoz        |       Owner:       
      Type:  defect        |      Status:  new  
  Priority:  minor         |   Milestone:       
 Component:  pidgin (gtk)  |     Version:  2.1.0
Resolution:                |    Keywords:       
   Pending:  0             |  
---------------------------+------------------------------------------------
Comment (by EvilSporkMan):

 This is definitely length based; 250 characters of away message is
 sufficient to reproduce the away message issue. (I have not looked into
 the profile component of this issue.)
 Steps to reproduce:
 1. Add yourself to your AIM buddy list.
 2. Set an away message with 250 characters in it.
 3. Right-click yourself and click Get Info.

 Observed behavior: away message is not displayed.
 Expected behavior: away message is displayed.

 The problem here is that the aim_userinfo_t is not being filled in as we
 expect for long messages. Here is a printout of the struct in normal
 circumstances:
 Breakpoint 2, purple_parse_userinfo (od=0xd4f1f00, conn=0xd31c050,
     fr=0xd31c0b8) at oscar.c:2857
 2857            user_info = purple_notify_user_info_new();
 1: *userinfo = {sn = 0xd326300 "t3hroxor", warnlevel = 0, idletime = 0,
   flags = 48, createtime = 1013478509, membersince = 1049754021,
   onlinesince = 1188764228, sessionlen = 7179, capabilities = 131117,
   icqinfo = {status = 0, ipaddr = 0, crap = '\0' <repeats 36 times>},
   present = 943, iconcsumtype = 0 '\0', iconcsumlen = 5,
   iconcsum = 0xd5673f0 "\002\001�\004r",
   info = 0xe1de650 "<html><body>You can call us Aaron Burr from the way
 we're droppin Hamiltons.<br><br>I AM LOCUTUS OF BORG! YOU WILL RESPOND TO
 MY QUESTIONS!</body></html>", info_encoding = 0xcd5e4c0 "text/aolrtf;
 charset=\"us-ascii\"",
   info_len = 153, status = 0xddef170 "away", status_encoding = 0x0,
   status_len = 4, itmsurl = 0x0, itmsurl_encoding = 0x0, itmsurl_len = 0,
   away = 0xe132940 "<html><body>away</body></html>\"",
   away_encoding = 0xdfdf0f0 "text/aolrtf; charset=\"us-ascii\"",
   away_len = 30, next = 0x0}

 And here it is with the bug reproduced:
 Breakpoint 2, purple_parse_userinfo (od=0xe19b400, conn=0xd59fc00,
     fr=0xd59fc68) at oscar.c:2857
 2857            user_info = purple_notify_user_info_new();
 1: *userinfo = {sn = 0xe1ad490 "t3hroxor", warnlevel = 0, idletime = 0,
   flags = 48, createtime = 0, membersince = 1049754021,
   onlinesince = 1188771470, sessionlen = 0, capabilities = 131117, icqinfo
 = {
     status = 0, ipaddr = 0, crap = '\0' <repeats 36 times>}, present =
 423,
   iconcsumtype = 0 '\0', iconcsumlen = 5,
   iconcsum = 0xe10dda0 "\002\001�\004r", info = 0x0, info_encoding = 0x0,
   info_len = 0,
   status = 0xe1c9b60
 "abcdefghijklmnopqrstuvabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1234567890123456789012345678901234567890123456789012345678901234567890X200
 1234567890123456789aaaaaa"...,
   status_encoding = 0x0, status_len = 230, itmsurl = 0x0,
   itmsurl_encoding = 0x0, itmsurl_len = 0, away = 0x0, away_encoding =
 0x0,
   away_len = 0, next = 0x0}


 This is using 2.1.1 on Linux. The exact away message I set was:
 abcdefghijklmnopqrstuvabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1234567890123456789012345678901234567890123456789012345678901234567890X200
 1234567890123456789aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa12345

 Here's the backtrace for that breakpoint:
 (gdb) bt
 #0  purple_parse_userinfo (od=0xe19b400, conn=0xd59fc00, fr=0xd59fc68)
     at oscar.c:2857
 #1  0x00002aaabe68b354 in userinfo (od=0xe19b400, conn=0xd59fc00,
     mod=0xdfffe90, frame=0xd59fc68, snac=0x7fffa668e7e0, bs=0xd59fc70)
     at family_locate.c:1279
 #2  0x00002aaabe68b904 in snachandler (od=0xe19b400, conn=0xd59fc00,
     mod=0xdfffe90, frame=0xd59fc68, snac=0x7fffa668e7e0, bs=0xd59fc70)
     at family_locate.c:1453
 #3  0x00002aaabe693e85 in parse_snac (od=0xe19b400, conn=0xd59fc00,
     frame=0xd59fc68) at flap_connection.c:675
 #4  0x00002aaabe6940e8 in parse_flap (od=0xe19b400, conn=0xd59fc00,
     frame=0xd59fc68) at flap_connection.c:761
 #5  0x00002aaabe6943e4 in flap_connection_recv_cb (data=0xd59fc00,
 source=18,
     cond=PURPLE_INPUT_READ) at flap_connection.c:886
 #6  0x000000000046203d in pidgin_io_invoke (source=0xd327bf0,
     condition=G_IO_IN, data=0xd017ea0) at gtkeventloop.c:77
 #7  0x00002aaaadfb1f44 in g_main_context_dispatch ()
    from /lib64/libglib-2.0.so.0
 #8  0x00002aaaadfb4d7d in g_main_context_check () from
 /lib64/libglib-2.0.so.0
 #9  0x00002aaaadfb508a in g_main_loop_run () from /lib64/libglib-2.0.so.0
 #10 0x00002aaaac4e7b13 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
 #11 0x000000000047c514 in main (argc=1, argv=0x7fffa6690dd8) at
 gtkmain.c:883

 Assigning to KingAnt because it's a problem with the oscar prpl somewhere.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/2486#comment:13>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list