# HG changeset patch # User Eric Warmenhoven # Date 959975116 0 # Node ID cea40691706c0429a57a97d1989cd6089f8477e1 # Parent 35796808896adff4ed1099da731f79cdd42594f7 [gaim-migrate @ 329] A few good oscar changes before release. committer: Tailor Script diff -r 35796808896a -r cea40691706c ChangeLog --- a/ChangeLog Fri Jun 02 18:59:27 2000 +0000 +++ b/ChangeLog Fri Jun 02 19:45:16 2000 +0000 @@ -8,7 +8,7 @@ * More fixes for the change on the AOL sign-on process. * Fixed bug where GAIM sometimes doesn't find a font to use. * Per-conversation font and color dialogs (thanks fflewddur) - * Chat in oscar works + * Chat in oscar works (somewhat) * Even more fixes for the sign-on process, and now you don't flash when setting permit/deny lists. diff -r 35796808896a -r cea40691706c libfaim/CHANGES.gaim --- a/libfaim/CHANGES.gaim Fri Jun 02 18:59:27 2000 +0000 +++ b/libfaim/CHANGES.gaim Fri Jun 02 19:45:16 2000 +0000 @@ -1,3 +1,10 @@ + +Fri Jun 2 19:39:13 UTC 2000 EWarmenhoven + - Buddy lists no longer get sent individually, but all together (as + many as fit in the buffer at one time). This should reduce a lot + of the "You're sending messages too fast" errors at signon. + - Chat is improved a bit, mostly because I think I'm starting to get + some clue as to what's going on. Fri Jun 2 08:53:53 UTC 2000 EWarmenhoven - Well, I got chat working again. diff -r 35796808896a -r cea40691706c src/oscar.c --- a/src/oscar.c Fri Jun 02 18:59:27 2000 +0000 +++ b/src/oscar.c Fri Jun 02 19:45:16 2000 +0000 @@ -347,8 +347,10 @@ switch(serviceid) { case 0x0005: /* Ads */ debug_print("Received Ads, finishing login\n"); + /* we'll take care of this in the parse_toc_buddy_config() below sprintf(buddies, "%s&", current_user->username); aim_bos_setbuddylist(sess, command->conn, buddies); + */ aim_bos_setprofile(sess, command->conn, current_user->user_info, NULL, gaim_caps); aim_seticbmparam(sess, command->conn); diff -r 35796808896a -r cea40691706c src/server.c --- a/src/server.c Fri Jun 02 18:59:27 2000 +0000 +++ b/src/server.c Fri Jun 02 19:45:16 2000 +0000 @@ -299,11 +299,17 @@ } sflap_send(buf, -1, TYPE_DATA); #else - /* oscar you have to add them one name at a time, except at login */ + char buf[MSG_LEN]; + int n = 0; while(buddies) { - serv_add_buddy((char *)buddies->data); + if (n > MSG_LEN - 18) { + aim_bos_setbuddylist(gaim_sess, gaim_conn, buf); + n = 0; + } + n += g_snprintf(buf + n, sizeof(buf) - n, "%s&", buddies->data); buddies = buddies->next; } + aim_bos_setbuddylist(gaim_sess, gaim_conn, buf); #endif }