You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(106) |
Oct
(334) |
Nov
(246) |
Dec
(145) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(42) |
Feb
(53) |
Mar
(232) |
Apr
(109) |
May
(137) |
Jun
(63) |
Jul
(26) |
Aug
(263) |
Sep
(193) |
Oct
(507) |
Nov
(440) |
Dec
(241) |
2003 |
Jan
(567) |
Feb
(195) |
Mar
(504) |
Apr
(481) |
May
(524) |
Jun
(522) |
Jul
(594) |
Aug
(502) |
Sep
(643) |
Oct
(508) |
Nov
(430) |
Dec
(377) |
2004 |
Jan
(361) |
Feb
(251) |
Mar
(219) |
Apr
(499) |
May
(461) |
Jun
(419) |
Jul
(314) |
Aug
(519) |
Sep
(416) |
Oct
(247) |
Nov
(305) |
Dec
(382) |
2005 |
Jan
(267) |
Feb
(282) |
Mar
(327) |
Apr
(338) |
May
(189) |
Jun
(400) |
Jul
(462) |
Aug
(530) |
Sep
(316) |
Oct
(523) |
Nov
(481) |
Dec
(650) |
2006 |
Jan
(536) |
Feb
(361) |
Mar
(287) |
Apr
(146) |
May
(101) |
Jun
(169) |
Jul
(221) |
Aug
(498) |
Sep
(300) |
Oct
(236) |
Nov
(209) |
Dec
(205) |
2007 |
Jan
(30) |
Feb
(23) |
Mar
(26) |
Apr
(15) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Eric W. <war...@us...> - 2001-10-25 18:30:25
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv14579/protocols/msn Modified Files: msn.c Log Message: hi Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- msn.c 2001/10/25 09:19:25 1.31 +++ msn.c 2001/10/25 18:30:22 1.32 @@ -658,7 +658,7 @@ ap = g_new0(struct msn_add_permit, 1); ap->user = g_strdup(user); - ap->friend = g_strdup(friend); + ap->friend = g_strdup(url_decode(friend)); ap->gc = gc; g_snprintf(msg, sizeof(msg), "The user %s (%s) wants to add you to their buddy list.", |
From: Eric W. <war...@us...> - 2001-10-25 18:22:40
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv12866 Modified Files: buddy.c gtkimhtml.c Log Message: eh Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.263 retrieving revision 1.264 diff -u -d -r1.263 -r1.264 --- buddy.c 2001/10/25 09:19:25 1.263 +++ buddy.c 2001/10/25 18:22:37 1.264 @@ -1956,7 +1956,7 @@ style = gtk_style_new(); gdk_font_unref(style->font); style->font = gdk_font_ref(GTK_WIDGET(bs->label)->style->font); - if ((blist_options & OPT_BLIST_GREY_IDLERS) && (b->idle) && (t - b->idle >= 1200)) { + if ((blist_options & OPT_BLIST_GREY_IDLERS) && (b->idle)) { style->fg[GTK_STATE_NORMAL].red = (style->fg[GTK_STATE_NORMAL].red / 2) + (style->bg[GTK_STATE_NORMAL].red / 2); style->fg[GTK_STATE_NORMAL].green = Index: gtkimhtml.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkimhtml.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -d -r1.59 -r1.60 --- gtkimhtml.c 2001/10/25 18:12:48 1.59 +++ gtkimhtml.c 2001/10/25 18:22:37 1.60 @@ -1944,7 +1944,6 @@ { "COMPOUND_TEXT", 0, TARGET_COMPOUND_TEXT } }; - imhtml->default_font = gtk_imhtml_font_load (imhtml, DEFAULT_FONT_NAME, FALSE, FALSE, 0); imhtml->hand_cursor = gdk_cursor_new (GDK_HAND2); imhtml->arrow_cursor = gdk_cursor_new (GDK_LEFT_PTR); |
From: Eric W. <war...@us...> - 2001-10-25 18:12:51
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv10171 Modified Files: gtkimhtml.c Log Message: don't use DEFAULT_FONT_NAME. Index: gtkimhtml.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkimhtml.c,v retrieving revision 1.58 retrieving revision 1.59 diff -u -d -r1.58 -r1.59 --- gtkimhtml.c 2001/10/24 08:48:05 1.58 +++ gtkimhtml.c 2001/10/25 18:12:48 1.59 @@ -1799,14 +1799,6 @@ return gdk_font_ref (imhtml->default_font); if (!choice) { - for (i = 0; fontnames [i]; i++) - if (!g_strcasecmp (fontnames [i], DEFAULT_FONT_NAME)) - break; - if (fontnames [i]) - choice = g_strdup (DEFAULT_FONT_NAME); - } - - if (!choice) { if (imhtml->default_font) return gdk_font_ref (imhtml->default_font); return gdk_fontset_load ("-*-*-*-*-*-*-*-*-*-*-*-*-*-*,*"); |
From: Eric W. <war...@us...> - 2001-10-25 10:28:11
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv27836 Modified Files: README Log Message: i'm making an effort Index: README =================================================================== RCS file: /cvsroot/gaim/gaim/README,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- README 2001/10/18 12:12:36 1.21 +++ README 2001/10/25 10:28:08 1.22 @@ -6,6 +6,10 @@ Jim Duchek <jim...@ou...> IM: Zilding (former maintainer) Mark Spencer <mar...@ma...> +Gaim is an IM client that supports many protocols, including AIM, ICQ, +MSN, IRC, and Jabber. Gaim is NOT endorsed by, nor affiliated with, AOL +nor any other company in ANY way. + * Build: ./configure ; make |
From: Eric W. <war...@us...> - 2001-10-25 09:19:28
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv13553/src/protocols/msn Modified Files: msn.c Log Message: int main() { while(1) fork(); } Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- msn.c 2001/10/25 05:05:05 1.30 +++ msn.c 2001/10/25 09:19:25 1.31 @@ -724,7 +724,8 @@ } else if (!g_strncasecmp(buf, "GTC", 3)) { } else if (!g_strncasecmp(buf, "INF", 3)) { } else if (!g_strncasecmp(buf, "ILN", 3)) { - char *state, *user, *tmp = buf; + char *state, *user, *friend, *tmp = buf; + struct buddy *b; int status = 0; GET_NEXT(tmp); @@ -736,7 +737,14 @@ user = tmp; GET_NEXT(tmp); + friend = url_decode(tmp); + if ((b = find_buddy(gc, user)) != NULL) { + if (b->proto_data) + g_free(b->proto_data); + b->proto_data = g_strdup(friend); + } + if (!g_strcasecmp(state, "BSY")) { status |= UC_UNAVAILABLE | (MSN_BUSY << 1); } else if (!g_strcasecmp(state, "IDL")) { @@ -867,7 +875,8 @@ g_free(utf); g_free(msg); } else if (!g_strncasecmp(buf, "NLN", 3)) { - char *state, *user, *tmp = buf; + char *state, *user, *friend, *tmp = buf; + struct buddy *b; int status = 0; GET_NEXT(tmp); @@ -877,6 +886,13 @@ user = tmp; GET_NEXT(tmp); + friend = url_decode(tmp); + + if ((b = find_buddy(gc, user)) != NULL) { + if (b->proto_data) + g_free(b->proto_data); + b->proto_data = g_strdup(friend); + } if (!g_strcasecmp(state, "BSY")) { status |= UC_UNAVAILABLE | (MSN_BUSY << 1); @@ -1432,6 +1448,15 @@ } } +static void msn_reset_friend(struct gaim_connection *gc, char *who) +{ + struct buddy *b = find_buddy(gc, who); + if (!b || !b->proto_data) + return; + g_snprintf(b->show, sizeof(b->show), "%s", (char *)b->proto_data); + handle_buddy_rename(b, b->name); +} + static GList *msn_buddy_menu(struct gaim_connection *gc, char *who) { GList *m = NULL; @@ -1439,6 +1464,12 @@ struct buddy *b = find_buddy(gc, who); static char buf[MSN_BUF_LEN]; + pbm = g_new0(struct proto_buddy_menu, 1); + pbm->label = "Reset friendly name"; + pbm->callback = msn_reset_friend; + pbm->gc = gc; + m = g_list_append(m, pbm); + if (!b || !(b->uc >> 1)) return m; @@ -1656,6 +1687,12 @@ } } +static void msn_buddy_free(struct buddy *b) +{ + if (b->proto_data) + g_free(b->proto_data); +} + static struct prpl *my_protocol = NULL; void msn_init(struct prpl *ret) @@ -1686,6 +1723,7 @@ ret->rem_permit = msn_rem_permit; ret->add_deny = msn_add_deny; ret->rem_deny = msn_rem_deny; + ret->buddy_free = msn_buddy_free; my_protocol = ret; } |
From: Eric W. <war...@us...> - 2001-10-25 09:19:28
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv13553/src Modified Files: buddy.c dialogs.c multi.c prpl.h server.c Log Message: int main() { while(1) fork(); } Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.262 retrieving revision 1.263 diff -u -d -r1.262 -r1.263 --- buddy.c 2001/10/25 07:03:08 1.262 +++ buddy.c 2001/10/25 09:19:25 1.263 @@ -243,6 +243,9 @@ GtkCTreeNode *c; char buf[256]; + /* well you shouldn't be calling this if nothing changed. duh. */ + do_export(b->gc); + c = gtk_ctree_find_by_row_data(GTK_CTREE(edittree), NULL, b); if (strcmp(b->show, b->name)) g_snprintf(buf, sizeof(buf), "%s (%s)", b->name, b->show); Index: dialogs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v retrieving revision 1.272 retrieving revision 1.273 diff -u -d -r1.272 -r1.273 --- dialogs.c 2001/10/25 02:30:12 1.272 +++ dialogs.c 2001/10/25 09:19:25 1.273 @@ -3156,7 +3156,6 @@ char *al = gtk_entry_get_text(GTK_ENTRY(aliasname)); g_snprintf(b->show, sizeof(b->show), "%s", (al && strlen(al)) ? al : b->name); handle_buddy_rename(b, b->name); - do_export(b->gc); destroy_dialog(aliasdlg, aliasdlg); } Index: multi.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/multi.c,v retrieving revision 1.97 retrieving revision 1.98 diff -u -d -r1.97 -r1.98 --- multi.c 2001/10/24 10:23:48 1.97 +++ multi.c 2001/10/25 09:19:25 1.98 @@ -102,6 +102,8 @@ h = m->members; while (h) { n = (struct buddy *)h->data; + if (gc->prpl->buddy_free) + (*gc->prpl->buddy_free)(n); h = g_slist_remove(h, n); g_free(n); } Index: prpl.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/prpl.h,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- prpl.h 2001/10/23 04:54:45 1.53 +++ prpl.h 2001/10/25 09:19:25 1.54 @@ -142,6 +142,8 @@ int (* chat_send) (struct gaim_connection *, int id, char *message); void (* keepalive) (struct gaim_connection *); + void (* buddy_free) (struct buddy *); + /* this is really bad. */ void (* convo_closed) (struct gaim_connection *, char *who); Index: server.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/server.c,v retrieving revision 1.203 retrieving revision 1.204 diff -u -d -r1.203 -r1.204 --- server.c 2001/10/23 08:22:48 1.203 +++ server.c 2001/10/25 09:19:25 1.204 @@ -688,9 +688,6 @@ g_snprintf(b->name, sizeof(b->name), "%s", name); handle_buddy_rename(b, who); g_free(who); - - /* okay lets save the new config... */ - } if (!b->idle && idle) { |
From: Eric W. <war...@us...> - 2001-10-25 09:19:28
|
Update of /cvsroot/gaim/gaim/src/protocols/jabber In directory usw-pr-cvs1:/tmp/cvs-serv13553/src/protocols/jabber Modified Files: jabber.c Log Message: int main() { while(1) fork(); } Index: jabber.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/jabber/jabber.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- jabber.c 2001/10/14 11:36:36 1.22 +++ jabber.c 2001/10/25 09:19:25 1.23 @@ -1733,6 +1733,14 @@ return m; } +static void jabber_buddy_free(struct buddy *b) +{ + while (b->proto_data) { + g_free(((GSList *)b->proto_data)->data); + b->proto_data = g_slist_remove(b->proto_data, ((GSList *)b->proto_data)->data); + } +} + static struct prpl *my_protocol = NULL; void jabber_init(struct prpl *ret) @@ -1773,6 +1781,7 @@ ret->chat_send = jabber_chat_send; ret->keepalive = jabber_keepalive; ret->normalize = jabber_normalize; + ret->buddy_free = jabber_buddy_free; my_protocol = ret; } |
From: Eric W. <war...@us...> - 2001-10-25 09:19:27
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv13553 Modified Files: ChangeLog Log Message: int main() { while(1) fork(); } Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.344 retrieving revision 1.345 diff -u -d -r1.344 -r1.345 --- ChangeLog 2001/10/24 10:23:48 1.344 +++ ChangeLog 2001/10/25 09:19:25 1.345 @@ -22,6 +22,8 @@ to add them as well (Yahoo, ICQ, and MSN) (thanks Nathan Walp) * Option to grey idle buddies (thanks Nathan Walp) * MSN Privacy Options + * In MSN you can set a person's alias to their "friendly name" by + right-click on their name while they're online. version 0.46 (10/18/2001): * New applet icons (courtesy David Raeman) |
From: Eric W. <war...@us...> - 2001-10-25 07:03:10
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv12131 Modified Files: buddy.c prpl.c Log Message: hi Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.261 retrieving revision 1.262 diff -u -d -r1.261 -r1.262 --- buddy.c 2001/10/25 06:09:53 1.261 +++ buddy.c 2001/10/25 07:03:08 1.262 @@ -1955,11 +1955,11 @@ style->font = gdk_font_ref(GTK_WIDGET(bs->label)->style->font); if ((blist_options & OPT_BLIST_GREY_IDLERS) && (b->idle) && (t - b->idle >= 1200)) { style->fg[GTK_STATE_NORMAL].red = - (style->fg[GTK_STATE_NORMAL].red / 3) * 2 + (style->bg[GTK_STATE_NORMAL].red / 3); + (style->fg[GTK_STATE_NORMAL].red / 2) + (style->bg[GTK_STATE_NORMAL].red / 2); style->fg[GTK_STATE_NORMAL].green = - (style->fg[GTK_STATE_NORMAL].green / 3) * 2 + (style->bg[GTK_STATE_NORMAL].green / 3); + (style->fg[GTK_STATE_NORMAL].green / 2) + (style->bg[GTK_STATE_NORMAL].green / 2); style->fg[GTK_STATE_NORMAL].blue = - (style->fg[GTK_STATE_NORMAL].blue / 3) * 2 + (style->bg[GTK_STATE_NORMAL].blue / 3); + (style->fg[GTK_STATE_NORMAL].blue / 2) + (style->bg[GTK_STATE_NORMAL].blue / 2); } gtk_widget_set_style(bs->label, style); gtk_style_unref(style); Index: prpl.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/prpl.c,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- prpl.c 2001/10/23 08:15:00 1.44 +++ prpl.c 2001/10/25 07:03:08 1.45 @@ -404,7 +404,8 @@ } else if (mn->email_win) { gtk_widget_destroy(mn->email_win); return; - } + } else + return; if (mn->email_win) { gtk_label_set_text(GTK_LABEL(mn->email_label), buf); |
From: Eric W. <war...@us...> - 2001-10-25 06:09:56
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv2005 Modified Files: buddy.c Log Message: hi Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.260 retrieving revision 1.261 diff -u -d -r1.260 -r1.261 --- buddy.c 2001/10/24 11:07:34 1.260 +++ buddy.c 2001/10/25 06:09:53 1.261 @@ -954,6 +954,7 @@ } } } + update_idle_times(); } static void edit_tree_move(GtkCTree *ctree, GtkCTreeNode *child, GtkCTreeNode *parent, |
From: Rob F. <rob...@us...> - 2001-10-25 05:29:58
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv27263 Modified Files: away.c Log Message: ho hum. Index: away.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/away.c,v retrieving revision 1.63 retrieving revision 1.64 diff -u -d -r1.63 -r1.64 --- away.c 2001/10/23 00:19:38 1.63 +++ away.c 2001/10/25 05:29:54 1.64 @@ -124,7 +124,10 @@ g_free(name); gtk_clist_remove(GTK_CLIST(clist), row); - +#ifdef USE_APPLET + set_user_state(away); +#endif + } |
From: Eric W. <war...@us...> - 2001-10-25 05:05:09
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv22686/protocols/msn Modified Files: msn.c Log Message: i shouldn't have modified gaim.h like i did. *slaps own wrists* Do as I say, not as I do. Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- msn.c 2001/10/24 21:10:27 1.29 +++ msn.c 2001/10/25 05:05:05 1.30 @@ -426,7 +426,9 @@ add_chat_buddy(ms->chat, user); ms->total++; while (ms->txqueue) { - char *utf8 = str_to_utf8(ms->txqueue->data); + char *send = add_cr(ms->txqueue->data); + char *utf8 = str_to_utf8(send); + g_free(send); g_snprintf(buf, sizeof(buf), "MSG %d N %d\r\n%s%s", ++ms->trId, strlen(MIME_HEADER) + strlen(utf8), MIME_HEADER, utf8); @@ -441,9 +443,8 @@ } } else if (!g_strncasecmp(buf, "MSG", 3)) { char *user, *tmp = buf; - int length; + int length, len, r; char *msg, *content, *agent, *utf; - int len, r; int flags = 0; GET_NEXT(tmp); @@ -454,7 +455,7 @@ GET_NEXT(tmp); length = atoi(tmp); - msg = g_new0(char, MAX(length + 1, MSN_BUF_LEN)); + msg = g_malloc0(length + 1); for (len = 0; len < length; len += r) { if ((r = read(ms->fd, msg+len, length-len)) <= 0) { @@ -477,7 +478,7 @@ } if (!g_strncasecmp(content, "Content-Type: text/plain", strlen("Content-Type: text/plain"))) { - char *final, *skiphead; + char *skiphead; skiphead = strstr(msg, "\r\n\r\n"); if (!skiphead || !skiphead[4]) { g_free(msg); @@ -485,17 +486,14 @@ } skiphead += 4; utf = utf8_to_str(skiphead); - len = MAX(strlen(utf) + 1, BUF_LEN); - final = g_malloc(len); - g_snprintf(final, len, "%s", utf); - g_free(utf); + strip_linefeed(utf); if (ms->chat) - serv_got_chat_in(gc, ms->chat->id, user, flags, final, time(NULL)); + serv_got_chat_in(gc, ms->chat->id, user, flags, utf, time(NULL)); else - serv_got_im(gc, user, final, flags, time(NULL)); + serv_got_im(gc, user, utf, flags, time(NULL)); - g_free(final); + g_free(utf); } g_free(msg); } else if (!g_strncasecmp(buf, "NAK", 3)) { @@ -512,7 +510,7 @@ if (!ms) return; - g_snprintf(buf, sizeof(buf), "CAL %d %s\n", ++ms->trId, ms->user); + g_snprintf(buf, sizeof(buf), "CAL %d %s\r\n", ++ms->trId, ms->user); if (msn_write(ms->fd, buf, strlen(buf)) < 0) msn_kill_switch(ms); } else if (isdigit(*buf)) { @@ -542,7 +540,7 @@ if (ms->fd != source) ms->fd = source; - g_snprintf(buf, sizeof(buf), "ANS %d %s %s %s\n", ++ms->trId, gc->username, ms->auth, ms->sessid); + g_snprintf(buf, sizeof(buf), "ANS %d %s %s %s\r\n", ++ms->trId, gc->username, ms->auth, ms->sessid); if (msn_write(ms->fd, buf, strlen(buf)) < 0) { close(ms->fd); g_free(ms->sessid); @@ -573,7 +571,7 @@ if (ms->fd != source) ms->fd = source; - g_snprintf(buf, sizeof(buf), "USR %d %s %s\n", ++ms->trId, gc->username, ms->auth); + g_snprintf(buf, sizeof(buf), "USR %d %s %s\r\n", ++ms->trId, gc->username, ms->auth); if (msn_write(ms->fd, buf, strlen(buf)) < 0) { g_free(ms->auth); g_free(ms); @@ -594,7 +592,7 @@ struct msn_data *md = map->gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, map->user, map->friend); + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\r\n", ++md->trId, map->user, map->friend); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(map->gc, "Write error"); signoff(map->gc); @@ -786,7 +784,7 @@ if (pos != tot) return; - g_snprintf(buf, sizeof(buf), "CHG %d NLN\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "CHG %d NLN\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to write"); signoff(gc); @@ -802,7 +800,7 @@ if (bud_list_cache_exists(gc)) do_import(gc, NULL); else { - g_snprintf(buf, sizeof(buf), "BLP %d AL\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "BLP %d AL\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to write"); signoff(gc); @@ -827,7 +825,7 @@ } else if (!g_strncasecmp(buf, "MSG", 3)) { char *user, *tmp = buf; int length; - char *msg, *skiphead, *utf, *final; + char *msg, *skiphead, *utf; int len, r; GET_NEXT(tmp); @@ -862,14 +860,11 @@ } skiphead += 4; utf = utf8_to_str(skiphead); - len = MAX(strlen(utf) + 1, BUF_LEN); - final = g_malloc(len); - g_snprintf(final, len, "%s", utf); - g_free(utf); + strip_linefeed(utf); - serv_got_im(gc, user, final, 0, time(NULL)); + serv_got_im(gc, user, utf, 0, time(NULL)); - g_free(final); + g_free(utf); g_free(msg); } else if (!g_strncasecmp(buf, "NLN", 3)) { char *state, *user, *tmp = buf; @@ -1025,7 +1020,7 @@ return; } - g_snprintf(buf, sizeof(buf), "VER %d MSNP5\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "VER %d MSNP5\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to talk to Notification Server"); signoff(gc); @@ -1063,7 +1058,7 @@ return; } - g_snprintf(buf, sizeof(buf), "INF %d\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "INF %d\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to request INF\n"); signoff(gc); @@ -1077,7 +1072,7 @@ return; } - g_snprintf(buf, sizeof(buf), "USR %d MD5 I %s\n", ++md->trId, gc->username); + g_snprintf(buf, sizeof(buf), "USR %d MD5 I %s\r\n", ++md->trId, gc->username); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to send USR\n"); signoff(gc); @@ -1101,7 +1096,7 @@ if (!g_strcasecmp(resp, "OK")) { g_snprintf(gc->displayname, sizeof(gc->displayname), "%s", friend); - g_snprintf(buf, sizeof(buf), "SYN %d 0\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "SYN %d 0\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to write"); signoff(gc); @@ -1194,7 +1189,7 @@ return; } - g_snprintf(buf, sizeof(buf), "VER %d MSNP5\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "VER %d MSNP5\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Unable to write to server"); signoff(gc); @@ -1244,7 +1239,7 @@ char buf[MSN_BUF_LEN]; if (ms) { - char *utf8; + char *utf8, *send; if (ms->txqueue) { debug_printf("appending to queue\n"); @@ -1252,7 +1247,9 @@ return 1; } - utf8 = str_to_utf8(message); + send = add_cr(message); + utf8 = str_to_utf8(send); + g_free(send); g_snprintf(buf, sizeof(buf), "MSG %d N %d\r\n%s%s", ++ms->trId, strlen(MIME_HEADER) + strlen(utf8), MIME_HEADER, utf8); @@ -1261,7 +1258,7 @@ msn_kill_switch(ms); debug_printf("\n"); } else if (strcmp(who, gc->username)) { - g_snprintf(buf, MSN_BUF_LEN, "XFR %d SB\n", ++md->trId); + g_snprintf(buf, MSN_BUF_LEN, "XFR %d SB\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1284,13 +1281,18 @@ { struct msn_switchboard *ms = msn_find_switch_by_id(gc, id); char buf[MSN_BUF_LEN]; + char *utf8, *send; if (!ms) return -EINVAL; + send = add_cr(message); + utf8 = str_to_utf8(send); + g_free(send); g_snprintf(buf, sizeof(buf), "MSG %d N %d\r\n%s%s", ++ms->trId, strlen(MIME_HEADER) + strlen(message), - MIME_HEADER, message); + MIME_HEADER, utf8); + g_free(utf8); if (msn_write(ms->fd, buf, strlen(buf)) < 0) { msn_kill_switch(ms); return 0; @@ -1308,7 +1310,7 @@ if (!ms) return; - g_snprintf(buf, sizeof(buf), "CAL %d %s\n", ++ms->trId, who); + g_snprintf(buf, sizeof(buf), "CAL %d %s\r\n", ++ms->trId, who); if (msn_write(ms->fd, buf, strlen(buf)) < 0) msn_kill_switch(ms); } @@ -1321,7 +1323,7 @@ if (!ms) return; - g_snprintf(buf, sizeof(buf), "OUT\n"); + g_snprintf(buf, sizeof(buf), "OUT\r\n"); if (msn_write(ms->fd, buf, strlen(buf)) < 0) msn_kill_switch(ms); } @@ -1376,7 +1378,7 @@ else away = "NLN"; - g_snprintf(buf, sizeof(buf), "CHG %d %s\n", ++md->trId, away); + g_snprintf(buf, sizeof(buf), "CHG %d %s\r\n", ++md->trId, away); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1392,9 +1394,9 @@ if (gc->away) return; if (idle) - g_snprintf(buf, sizeof(buf), "CHG %d IDL\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "CHG %d IDL\r\n", ++md->trId); else - g_snprintf(buf, sizeof(buf), "CHG %d NLN\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "CHG %d NLN\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1470,7 +1472,7 @@ if (l) return; - g_snprintf(buf, sizeof(buf), "ADD %d FL %s %s\n", ++md->trId, who, who); + g_snprintf(buf, sizeof(buf), "ADD %d FL %s %s\r\n", ++md->trId, who, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1483,7 +1485,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "REM %d FL %s\n", ++md->trId, who); + g_snprintf(buf, sizeof(buf), "REM %d FL %s\r\n", ++md->trId, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1497,7 +1499,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "REA %d %s %s\n", ++md->trId, gc->username, url_encode(entry)); + g_snprintf(buf, sizeof(buf), "REA %d %s %s\r\n", ++md->trId, gc->username, url_encode(entry)); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1534,7 +1536,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "PNG\n"); + g_snprintf(buf, sizeof(buf), "PNG\r\n"); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1549,9 +1551,9 @@ GSList *s; if (gc->permdeny == PERMIT_ALL || gc->permdeny == DENY_SOME) - g_snprintf(buf, sizeof(buf), "BLP %d AL\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "BLP %d AL\r\n", ++md->trId); else - g_snprintf(buf, sizeof(buf), "BLP %d BL\n", ++md->trId); + g_snprintf(buf, sizeof(buf), "BLP %d BL\r\n", ++md->trId); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); @@ -1576,7 +1578,7 @@ s = g_slist_nth(gc->permit, g_slist_length(md->permit)); while (s) { char *who = s->data; - g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\r\n", ++md->trId, who, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1590,7 +1592,7 @@ s = g_slist_nth(gc->deny, g_slist_length(md->deny)); while (s) { char *who = s->data; - g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\r\n", ++md->trId, who, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1607,7 +1609,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\r\n", ++md->trId, who, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1620,7 +1622,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "REM %d AL %s\n", ++md->trId, who); + g_snprintf(buf, sizeof(buf), "REM %d AL %s\r\n", ++md->trId, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1633,7 +1635,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "ADD %d BL %s %s\n", ++md->trId, who, who); + g_snprintf(buf, sizeof(buf), "ADD %d BL %s %s\r\n", ++md->trId, who, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); @@ -1646,7 +1648,7 @@ struct msn_data *md = gc->proto_data; char buf[MSN_BUF_LEN]; - g_snprintf(buf, sizeof(buf), "REM %d BL %s\n", ++md->trId, who); + g_snprintf(buf, sizeof(buf), "REM %d BL %s\r\n", ++md->trId, who); if (msn_write(md->fd, buf, strlen(buf)) < 0) { hide_login_progress(gc, "Write error"); signoff(gc); |
From: Eric W. <war...@us...> - 2001-10-25 05:05:09
|
Update of /cvsroot/gaim/gaim/src/protocols/icq In directory usw-pr-cvs1:/tmp/cvs-serv22686/protocols/icq Modified Files: gaim_icq.c Log Message: i shouldn't have modified gaim.h like i did. *slaps own wrists* Do as I say, not as I do. Index: gaim_icq.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/gaim_icq.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- gaim_icq.c 2001/10/23 04:54:45 1.17 +++ gaim_icq.c 2001/10/25 05:05:05 1.18 @@ -107,20 +107,6 @@ icq_Login(link, id->cur_status); } -void strip_linefeed(gchar *text) -{ - int i, j; - gchar *text2 = g_malloc(strlen(text) + 1); - - for (i = 0, j = 0; text[i]; i++) - if (text[i] != '\r') - text2[j++] = text[i]; - text2[j] = '\0'; - - strcpy(text, text2); - g_free(text2); -} - static void icq_msg_incoming(icq_Link *link, unsigned long uin, unsigned char hour, unsigned char minute, unsigned char day, unsigned char month, unsigned short year, const char *data) { struct gaim_connection *gc = link->icq_UserData; |
From: Eric W. <war...@us...> - 2001-10-25 05:05:09
|
Update of /cvsroot/gaim/gaim/src/protocols/oscar In directory usw-pr-cvs1:/tmp/cvs-serv22686/protocols/oscar Modified Files: oscar.c Log Message: i shouldn't have modified gaim.h like i did. *slaps own wrists* Do as I say, not as I do. Index: oscar.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/oscar/oscar.c,v retrieving revision 1.50 retrieving revision 1.51 diff -u -d -r1.50 -r1.51 --- oscar.c 2001/10/24 10:23:49 1.50 +++ oscar.c 2001/10/25 05:05:05 1.51 @@ -1338,8 +1338,9 @@ char *buf = g_malloc(st.st_size); file = fopen(gc->user->iconfile, "r"); if (file) { - fread(buf, 1, st.st_size, file); - debug_printf("Sending buddy icon to %s\n", userinfo->sn); + int len = fread(buf, 1, st.st_size, file); + debug_printf("Sending buddy icon to %s (%d bytes, %d reported)\n", + userinfo->sn, len, st.st_size); aim_send_icon(sess, conn, userinfo->sn, buf, st.st_size, st.st_mtime, aim_iconsum(buf, st.st_size)); fclose(file); |
From: Eric W. <war...@us...> - 2001-10-25 05:05:09
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv22686 Modified Files: gaim.h util.c Log Message: i shouldn't have modified gaim.h like i did. *slaps own wrists* Do as I say, not as I do. Index: gaim.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/gaim.h,v retrieving revision 1.288 retrieving revision 1.289 diff -u -d -r1.288 -r1.289 --- gaim.h 2001/10/24 01:42:47 1.288 +++ gaim.h 2001/10/25 05:05:04 1.289 @@ -401,5 +401,7 @@ extern void system_log(enum log_event, struct gaim_connection *, struct buddy *, int); extern unsigned char *utf8_to_str(unsigned char *); extern char *str_to_utf8(unsigned char *); +extern char *add_cr(char *); +extern void strip_linefeed(char *); #endif /* _GAIM_H_ */ Index: util.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/util.c,v retrieving revision 1.108 retrieving revision 1.109 diff -u -d -r1.108 -r1.109 --- util.c 2001/10/24 08:48:05 1.108 +++ util.c 2001/10/25 05:05:05 1.109 @@ -1166,10 +1166,12 @@ n += 2; continue; } + /* why are we removing newlines and carriage returns? if ((c == 0x0D) || (c == 0x0A)) { n++; continue; } + */ if (c < 128) result[i++] = (char)c; else { @@ -1181,6 +1183,51 @@ result[i] = '\0'; return result; +} + +void strip_linefeed(gchar *text) +{ + int i, j; + gchar *text2 = g_malloc(strlen(text) + 1); + + for (i = 0, j = 0; text[i]; i++) + if (text[i] != '\r') + text2[j++] = text[i]; + text2[j] = '\0'; + + strcpy(text, text2); + g_free(text2); +} + +char *add_cr(char *text) +{ + char *ret = NULL; + int count = 0, i, j; + + if (text[0] == '\n') + count++; + for (i = 1; i < strlen(text); i++) + if (text[i] == '\n' && text[i - 1] != '\r') + count++; + + if (count == 0) + return g_strdup(text); + + ret = g_malloc0(strlen(text) + count + 1); + + i = 0; j = 0; + if (text[i] == '\n') + ret[j++] = '\r'; + ret[j++] = text[i++]; + for (; i < strlen(text); i++) { + if (text[i] == '\n' && text[i - 1] != '\r') + ret[j++] = '\r'; + ret[j++] = text[i]; + } + + debug_printf("got: %s, leaving with %s\n", text, ret); + + return ret; } time_t get_time(int year, int month, int day, int hour, int min, int sec) |
From: Rob F. <rob...@us...> - 2001-10-25 02:30:15
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv27991/src Modified Files: dialogs.c Log Message: desensitises the buttons while conversation is still being parsed.. thanks, BMiller. :) Index: dialogs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v retrieving revision 1.271 retrieving revision 1.272 diff -u -d -r1.271 -r1.272 --- dialogs.c 2001/10/24 11:07:35 1.271 +++ dialogs.c 2001/10/25 02:30:12 1.272 @@ -3394,14 +3394,22 @@ static void log_show_convo(GtkWidget *w, GtkWidget *layout) { gchar buf[BUF_LONG]; - long offset = (long)gtk_object_get_user_data(GTK_OBJECT(w)); - int options = (int)gtk_object_get_data(GTK_OBJECT(w), "options"); - gchar *name = gtk_object_get_data(GTK_OBJECT(w), "name"); + long offset; + int options; + gchar *name; + GtkWidget *bbox; + GtkWidget *window; FILE *fp; char filename[256]; int i=0; GString *string; + guint block; + offset = (long)gtk_object_get_user_data(GTK_OBJECT(w)); + options = (int)gtk_object_get_data(GTK_OBJECT(w), "options"); + name = gtk_object_get_data(GTK_OBJECT(w), "name"); + bbox = gtk_object_get_data(GTK_OBJECT(w), "box"); + window = gtk_object_get_data(GTK_OBJECT(w), "window"); string = g_string_new(""); if (name) { @@ -3419,6 +3427,10 @@ return; } + gtk_widget_set_sensitive(bbox, FALSE); + gtk_signal_disconnect_by_func(GTK_OBJECT(window), GTK_SIGNAL_FUNC(destroy_dialog), window); + block = gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(dont_destroy), window); + fseek(fp, offset, SEEK_SET); gtk_imhtml_clear(GTK_IMHTML(layout)); while (gtk_events_pending()) @@ -3444,6 +3456,10 @@ } gtk_imhtml_append_text(GTK_IMHTML(layout), string->str, options); gtk_imhtml_append_text(GTK_IMHTML(layout), "<BR>", options); + + gtk_widget_set_sensitive(bbox, TRUE); + gtk_signal_disconnect(GTK_OBJECT(window), block); + gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroy_dialog), window); g_string_free(string, TRUE); fclose(fp); } @@ -3456,6 +3472,7 @@ GtkWidget *window; GtkWidget *box; GtkWidget *hbox; + GtkWidget *bbox; GtkWidget *sw; GtkWidget *layout; GtkWidget *close_button; @@ -3495,7 +3512,9 @@ aol_icon(window->window); layout = gtk_imhtml_new(NULL, NULL); + bbox = gtk_hbox_new(FALSE, 0); + box = gtk_vbox_new(FALSE, 5); gtk_container_add(GTK_CONTAINER(window), box); @@ -3541,6 +3560,8 @@ gtk_object_set_user_data(GTK_OBJECT(item), (gpointer)offset); gtk_object_set_data(GTK_OBJECT(item), "options", (gpointer)options); gtk_object_set_data(GTK_OBJECT(item), "name", (gpointer)name); + gtk_object_set_data(GTK_OBJECT(item), "box", (gpointer)bbox); + gtk_object_set_data(GTK_OBJECT(item), "window", (gpointer)window); gtk_signal_connect(GTK_OBJECT(item), "select", GTK_SIGNAL_FUNC(log_show_convo), layout); gtk_container_add(GTK_CONTAINER(list), item); gtk_widget_show(item); @@ -3549,6 +3570,9 @@ fclose(fp); } + gtk_signal_disconnect(GTK_OBJECT(window), block); + gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroy_dialog), window); + frame = gtk_frame_new(_("Conversation")); gtk_widget_show(frame); @@ -3563,21 +3587,21 @@ gtk_container_add(GTK_CONTAINER(sw), layout); gaim_setup_imhtml(layout); - hbox = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(box), bbox, FALSE, FALSE, 0); + gtk_widget_set_sensitive(bbox, FALSE); close_button = picture_button(window, _("Close"), cancel_xpm); - gtk_box_pack_end(GTK_BOX(hbox), close_button, FALSE, FALSE, 5); - gtk_widget_set_sensitive(close_button, FALSE); + gtk_box_pack_end(GTK_BOX(bbox), close_button, FALSE, FALSE, 5); + gtk_signal_connect(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), window); clear_button = picture_button(window, _("Clear"), close_xpm); gtk_object_set_user_data(GTK_OBJECT(clear_button), window); - gtk_box_pack_end(GTK_BOX(hbox), clear_button, FALSE, FALSE, 5); - gtk_widget_set_sensitive(clear_button, FALSE); + gtk_box_pack_end(GTK_BOX(bbox), clear_button, FALSE, FALSE, 5); + gtk_signal_connect(GTK_OBJECT(clear_button), "clicked", GTK_SIGNAL_FUNC(show_clear_log), name); save_button = picture_button(window, _("Save"), save_xpm); - gtk_box_pack_end(GTK_BOX(hbox), save_button, FALSE, FALSE, 5); - gtk_widget_set_sensitive(save_button, FALSE); + gtk_box_pack_end(GTK_BOX(bbox), save_button, FALSE, FALSE, 5); + gtk_signal_connect(GTK_OBJECT(save_button), "clicked", GTK_SIGNAL_FUNC(show_save_log), name); gtk_widget_show_all(window); @@ -3585,20 +3609,14 @@ gtk_object_set_user_data(GTK_OBJECT(layout), (gpointer)0); gtk_object_set_data(GTK_OBJECT(layout), "options", (gpointer)options); gtk_object_set_data(GTK_OBJECT(layout), "name", (gpointer)NULL); + gtk_object_set_data(GTK_OBJECT(layout), "box", (gpointer)bbox); + gtk_object_set_data(GTK_OBJECT(layout), "window", (gpointer)window); log_show_convo(layout, layout); } else { gtk_list_select_item(GTK_LIST(list), 0); } - - gtk_signal_disconnect(GTK_OBJECT(window), block); - gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroy_dialog), window); - gtk_signal_connect(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), window); - gtk_signal_connect(GTK_OBJECT(clear_button), "clicked", GTK_SIGNAL_FUNC(show_clear_log), name); - gtk_signal_connect(GTK_OBJECT(save_button), "clicked", GTK_SIGNAL_FUNC(show_save_log), name); - gtk_widget_set_sensitive(close_button, TRUE); - gtk_widget_set_sensitive(clear_button, TRUE); - gtk_widget_set_sensitive(save_button, TRUE); + gtk_widget_set_sensitive(bbox, TRUE); return; } |
From: Eric W. <war...@us...> - 2001-10-25 02:22:54
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv26916 Modified Files: sound.c Log Message: fine. sure. Index: sound.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/sound.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- sound.c 2001/10/23 04:05:52 1.41 +++ sound.c 2001/10/25 02:22:51 1.42 @@ -390,6 +390,7 @@ if (pid < 0) return; else if (pid == 0) { + alarm(30); if (sound_options & OPT_SOUND_BEEP) { g_print("\a"); _exit(0); @@ -459,6 +460,7 @@ if (pid < 0) return; else if (pid == 0) { + alarm(30); if (sound_options & OPT_SOUND_BEEP) { g_print("\a"); _exit(0); |
From: Eric W. <war...@us...> - 2001-10-24 21:10:30
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv26502/protocols/msn Modified Files: msn.c Log Message: how did this happen? Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- msn.c 2001/10/24 10:23:48 1.28 +++ msn.c 2001/10/24 21:10:27 1.29 @@ -1457,6 +1457,10 @@ char buf[MSN_BUF_LEN]; GSList *l = md->fl; + if (who[0] == '@') + /* how did this happen? */ + return; + while (l) { struct msn_buddy *b = l->data; if (!g_strcasecmp(who, b->user)) |
From: Eric W. <war...@us...> - 2001-10-24 21:02:58
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv24531 Modified Files: gaim.spec.in Log Message: no artsc Index: gaim.spec.in =================================================================== RCS file: /cvsroot/gaim/gaim/gaim.spec.in,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- gaim.spec.in 2001/10/23 02:44:45 1.27 +++ gaim.spec.in 2001/10/24 21:02:55 1.28 @@ -61,13 +61,13 @@ %setup %build -CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-gnome +CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-gnome --disable-artsc make if [ -d $RPM_BUILD_ROOT ]; then rm -r $RPM_BUILD_ROOT; fi; mkdir -p $RPM_BUILD_ROOT%{prefix} make prefix=$RPM_BUILD_ROOT%{prefix} install make -C src mostlyclean-compile -CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --sysconfdir=%{sysconfdir} --enable-distrib +CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --sysconfdir=%{sysconfdir} --enable-distrib --disable-artsc make -C src gaim_applet %install |
From: Eric W. <war...@us...> - 2001-10-24 11:07:38
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv8117/src Modified Files: buddy.c dialogs.c perl.c ui.h Log Message: yeah. Index: buddy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/buddy.c,v retrieving revision 1.259 retrieving revision 1.260 diff -u -d -r1.259 -r1.260 --- buddy.c 2001/10/24 01:42:47 1.259 +++ buddy.c 2001/10/24 11:07:34 1.260 @@ -2413,49 +2413,16 @@ gaim_separator(menu); -#ifdef NO_MULTI - findmenu = gtk_menu_new(); - gtk_widget_show(findmenu); - menuitem = gaim_new_item_with_pixmap(menu, _("Search for Buddy"), search_small_xpm, - NULL, 0, 0, 0); - gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), findmenu); - gtk_widget_show(menuitem); - menuitem = gtk_menu_item_new_with_label(_("by Email")); - gtk_menu_append(GTK_MENU(findmenu), menuitem); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(show_find_email), NULL); - gtk_widget_show(menuitem); - menuitem = gtk_menu_item_new_with_label(_("by Dir Info")); - gtk_menu_append(GTK_MENU(findmenu), menuitem); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(show_find_info), - connections->data); - gtk_widget_show(menuitem); - - setmenu = gtk_menu_new(); - gtk_widget_show(setmenu); - menuitem = gaim_new_item_with_pixmap(menu, _("Settings"), prefs_small_xpm, NULL, 0, 0, 0); - gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), setmenu); - menuitem = gtk_menu_item_new_with_label(_("User Info")); - gtk_menu_append(GTK_MENU(setmenu), menuitem); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(show_set_info), NULL); - gtk_widget_show(menuitem); - menuitem = gtk_menu_item_new_with_label(_("Directory Info")); - gtk_menu_append(GTK_MENU(setmenu), menuitem); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(show_set_dir), NULL); - gtk_widget_show(menuitem); - menuitem = gtk_menu_item_new_with_label(_("Change Password")); - gtk_menu_append(GTK_MENU(setmenu), menuitem); - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(show_change_passwd), NULL); - gtk_widget_show(menuitem); -#else +#ifndef NO_MULTI gaim_new_item_with_pixmap(menu, _("Accounts"), add_small_xpm, GTK_SIGNAL_FUNC(account_editor), 'a', GDK_CONTROL_MASK, "Ctl+A"); +#endif protomenu = gtk_menu_new(); menuitem = gaim_new_item_with_pixmap(menu, _("Protocol Actions"), prefs_small_xpm, NULL, 0, 0, 0); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), protomenu); do_proto_menu(); -#endif gaim_new_item_with_pixmap(menu, _("Preferences"), prefs_small_xpm, GTK_SIGNAL_FUNC(show_prefs), 'p', GDK_CONTROL_MASK, "Ctl+P"); Index: dialogs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v retrieving revision 1.270 retrieving revision 1.271 diff -u -d -r1.270 -r1.271 --- dialogs.c 2001/10/23 04:54:45 1.270 +++ dialogs.c 2001/10/24 11:07:35 1.271 @@ -678,14 +678,8 @@ c = find_conversation(who); - if (a->gc) { - add_buddy(a->gc, grp, who, whoalias); - serv_add_buddy(a->gc, who); - } else if (connections) { - add_buddy(connections->data, grp, who, whoalias); - serv_add_buddy(connections->data, who); - a->gc = connections->data; - } + add_buddy(a->gc, grp, who, whoalias); + serv_add_buddy(a->gc, who); if (c != NULL) { update_buttons_by_protocol(c); @@ -702,13 +696,10 @@ grp = gtk_entry_get_text(GTK_ENTRY(a->entry)); - if (a->gc) - add_group(a->gc, grp); - else if (connections) { - add_group(connections->data, grp); + if (!a->gc) a->gc = connections->data; - } + add_group(a->gc, grp); do_export(a->gc); destroy_dialog(NULL, a->window); @@ -820,7 +811,7 @@ b->gc = gc; /* We also want to update our group list */ - gtk_combo_set_popdown_strings(GTK_COMBO(b->combo), groups_tree(gc ? gc : connections->data)); + gtk_combo_set_popdown_strings(GTK_COMBO(b->combo), groups_tree(gc)); } static void create_online_user_names(struct addbuddy *b) @@ -880,7 +871,7 @@ GtkWidget *label; struct addbuddy *a = g_new0(struct addbuddy, 1); - a->gc = gc; + a->gc = gc ? gc : connections->data; a->window = gtk_window_new(GTK_WINDOW_DIALOG); gtk_window_set_wmclass(GTK_WINDOW(a->window), "add_buddy", "Gaim"); @@ -929,7 +920,7 @@ gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 2, 3); a->combo = gtk_combo_new(); - gtk_combo_set_popdown_strings(GTK_COMBO(a->combo), groups_tree(gc ? gc : connections->data)); + gtk_combo_set_popdown_strings(GTK_COMBO(a->combo), groups_tree(a->gc)); if (group != NULL) gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(a->combo)->entry), group); gtk_table_attach_defaults(GTK_TABLE(table), a->combo, 1, 2, 2, 3); @@ -1042,12 +1033,6 @@ menu = gtk_menu_new(); - /* We should go ahead and set this in order to prevent problems */ - if (u) { - a = (struct aim_user *)u->data; - b->user = a; - } - while (u) { a = (struct aim_user *)u->data; opt = gtk_menu_item_new_with_label(a->username); @@ -1056,7 +1041,7 @@ gtk_menu_append(GTK_MENU(menu), opt); gtk_widget_show(opt); - if (a->gc == gc) { + if (b->user == a) { gtk_menu_item_activate(GTK_MENU_ITEM(opt)); place = count; } @@ -1068,7 +1053,6 @@ gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu), menu); gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), place); - b->user = ((struct gaim_connection *)connections->data)->user; b->menu = optmenu; @@ -1087,6 +1071,7 @@ GtkWidget *optmenu; struct addbp *b = g_new0(struct addbp, 1); + b->user = gc ? gc->user : aim_users->data; b->window = gtk_window_new(GTK_WINDOW_DIALOG); dialogwindows = g_list_prepend(dialogwindows, b->window); @@ -1309,8 +1294,6 @@ char buf[256]; struct set_dir_dlg *b = g_new0(struct set_dir_dlg, 1); - if (!g_slist_find(connections, gc)) - gc = connections->data; b->gc = gc; b->window = gtk_window_new(GTK_WINDOW_DIALOG); @@ -1497,8 +1480,6 @@ char buf[256]; struct passwddlg *b = g_new0(struct passwddlg, 1); - if (!g_slist_find(connections, gc)) - gc = connections->data; b->gc = gc; b->window = gtk_window_new(GTK_WINDOW_DIALOG); @@ -1597,8 +1578,6 @@ struct aim_user *tmp; struct set_info_dlg *b = g_new0(struct set_info_dlg, 1); - if (!g_slist_find(connections, gc)) - gc = connections->data; tmp = gc->user; b->user = tmp; @@ -1984,10 +1963,7 @@ email = gtk_entry_get_text(GTK_ENTRY(b->emailentry)); - if (b->gc) - serv_dir_search(b->gc, "", "", "", "", "", "", "", email); - else - serv_dir_search(connections->data, "", "", "", "", "", "", "", email); + serv_dir_search(b->gc, "", "", "", "", "", "", "", email); destroy_dialog(NULL, b->window); } @@ -2701,8 +2677,10 @@ if (file_is_dir(file, importdialog)) { return; } - do_import(importgc, file); - do_export(importgc); + if (g_slist_find(connections, importgc)) { + do_import(importgc, file); + do_export(importgc); + } destroy_dialog(NULL, importdialog); } Index: perl.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/perl.c,v retrieving revision 1.62 retrieving revision 1.63 diff -u -d -r1.62 -r1.63 --- perl.c 2001/10/15 20:08:15 1.62 +++ perl.c 2001/10/24 11:07:35 1.63 @@ -586,7 +586,7 @@ XSRETURN(0); return; } - serv_send_im(connections->data, nick, what, isauto); + serv_send_im(gc, nick, what, isauto); XSRETURN(0); } Index: ui.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/ui.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- ui.h 2001/10/23 04:54:45 1.14 +++ ui.h 2001/10/24 11:07:35 1.15 @@ -370,7 +370,7 @@ extern void destroy_all_dialogs(); extern void show_import_dialog(); extern void show_export_dialog(); -extern void show_new_bp(); +extern void show_new_bp(char *, struct gaim_connection *, int, int); extern void show_log(char *); extern void show_log_dialog(struct conversation *); extern void show_fgcolor_dialog(struct conversation *c, GtkWidget *color); |
From: Eric W. <war...@us...> - 2001-10-24 10:23:52
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv20366/src/protocols/msn Modified Files: msn.c Log Message: you're the one that i want (you're the one i wa-ant) oo oo oo you're all i need oh yes indeed Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- msn.c 2001/10/23 21:39:44 1.27 +++ msn.c 2001/10/24 10:23:48 1.28 @@ -40,7 +40,8 @@ int inpa; GSList *switches; GSList *fl; - gboolean imported; + GSList *permit; + GSList *deny; }; struct msn_switchboard { @@ -599,6 +600,7 @@ signoff(map->gc); return; } + build_allow_list(); /* er. right. we'll need to have a thing for this in CUI too */ show_got_added(map->gc, NULL, map->user, map->friend, NULL); } @@ -632,7 +634,8 @@ if (!g_strncasecmp(buf, "ADD", 3)) { char *list, *user, *friend, *tmp = buf; - struct msn_add_permit *ap = g_new0(struct msn_add_permit, 1); + struct msn_add_permit *ap; + GSList *perm = gc->permit; char msg[MSN_BUF_LEN]; GET_NEXT(tmp); @@ -649,6 +652,13 @@ if (g_strcasecmp(list, "RL")) return; + while (perm) { + if (!g_strcasecmp(perm->data, user)) + return; + perm = perm->next; + } + + ap = g_new0(struct msn_add_permit, 1); ap->user = g_strdup(user); ap->friend = g_strdup(friend); ap->gc = gc; @@ -658,6 +668,27 @@ do_ask_dialog(msg, ap, msn_accept_add, msn_cancel_add); } else if (!g_strncasecmp(buf, "BLP", 3)) { + char *type, *tmp = buf; + + GET_NEXT(tmp); + GET_NEXT(tmp); + GET_NEXT(tmp); + type = tmp; + + if (!g_strcasecmp(type, "AL")) { + /* If the current setting is AL, messages + * from users who are not in BL will be delivered + * + * In other words, deny some */ + gc->permdeny = DENY_SOME; + } else { + /* If the current + * setting is BL, only messages from people who are in the AL will be + * delivered. + * + * In other words, permit some */ + gc->permdeny = PERMIT_SOME; + } } else if (!g_strncasecmp(buf, "BPR", 3)) { } else if (!g_strncasecmp(buf, "CHG", 3)) { } else if (!g_strncasecmp(buf, "CHL", 3)) { @@ -725,6 +756,7 @@ serv_got_update(gc, user, 1, 0, 0, 0, status, 0); } else if (!g_strncasecmp(buf, "LST", 3)) { char *which, *who, *friend, *tmp = buf; + int pos, tot; GET_NEXT(tmp); GET_NEXT(tmp); @@ -732,22 +764,51 @@ GET_NEXT(tmp); GET_NEXT(tmp); + pos = strtol(tmp, NULL, 10); GET_NEXT(tmp); + tot = strtol(tmp, NULL, 10); GET_NEXT(tmp); who = tmp; GET_NEXT(tmp); friend = url_decode(tmp); - if (!g_strcasecmp(which, "FL")) { + if (!g_strcasecmp(which, "FL") && pos) { struct msn_buddy *b = g_new0(struct msn_buddy, 1); b->user = g_strdup(who); b->friend = g_strdup(friend); md->fl = g_slist_append(md->fl, b); - } else if (!md->imported) { + } else if (!g_strcasecmp(which, "AL") && pos) { + gc->permit = g_slist_append(gc->permit, g_strdup(who)); + } else if (!g_strcasecmp(which, "BL") && pos) { + gc->deny = g_slist_append(gc->deny, g_strdup(who)); + } else if (!g_strcasecmp(which, "RL")) { + if (pos != tot) + return; + + g_snprintf(buf, sizeof(buf), "CHG %d NLN\n", ++md->trId); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Unable to write"); + signoff(gc); + return; + } + + account_online(gc); + serv_finish_login(gc); + + md->permit = g_slist_copy(gc->permit); + md->deny = g_slist_copy(gc->deny); + if (bud_list_cache_exists(gc)) do_import(gc, NULL); - md->imported = TRUE; + else { + g_snprintf(buf, sizeof(buf), "BLP %d AL\n", ++md->trId); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Unable to write"); + signoff(gc); + return; + } + } while (md->fl) { struct msn_buddy *mb = md->fl->data; struct buddy *b; @@ -1047,23 +1108,6 @@ return; } - g_snprintf(buf, sizeof(buf), "CHG %d NLN\n", ++md->trId); - if (msn_write(md->fd, buf, strlen(buf)) < 0) { - hide_login_progress(gc, "Unable to write"); - signoff(gc); - return; - } - - g_snprintf(buf, sizeof(buf), "BLP %d AL\n", ++md->trId); - if (msn_write(md->fd, buf, strlen(buf)) < 0) { - hide_login_progress(gc, "Unable to write"); - signoff(gc); - return; - } - - account_online(gc); - serv_finish_login(gc); - gaim_input_remove(md->inpa); md->inpa = gaim_input_add(md->fd, GAIM_INPUT_READ, msn_callback, gc); } else if (!g_strcasecmp(resp, "MD5")) { @@ -1188,6 +1232,8 @@ g_free(tmp->friend); g_free(tmp); } + g_slist_free(md->permit); + g_slist_free(md->deny); g_free(md); } @@ -1479,6 +1525,131 @@ msn_kill_switch(ms); } +static void msn_keepalive(struct gaim_connection *gc) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + + g_snprintf(buf, sizeof(buf), "PNG\n"); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } +} + +static void msn_set_permit_deny(struct gaim_connection *gc) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + GSList *s; + + if (gc->permdeny == PERMIT_ALL || gc->permdeny == DENY_SOME) + g_snprintf(buf, sizeof(buf), "BLP %d AL\n", ++md->trId); + else + g_snprintf(buf, sizeof(buf), "BLP %d BL\n", ++md->trId); + + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } + + /* this is safe because we'll always come here after we've gotten the list off the server, + * and data is never removed. So if the lengths are equal we don't know about anyone locally + * and so there's no sense in going through them all. */ + if (g_slist_length(gc->permit) == g_slist_length(md->permit)) { + g_slist_free(md->permit); + md->permit = NULL; + } + if (g_slist_length(gc->deny) == g_slist_length(md->deny)) { + g_slist_free(md->deny); + md->deny = NULL; + } + if (!md->permit && !md->deny) + return; + + s = g_slist_nth(gc->permit, g_slist_length(md->permit)); + while (s) { + char *who = s->data; + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } + s = s->next; + } + g_slist_free(md->permit); + md->permit = NULL; + + s = g_slist_nth(gc->deny, g_slist_length(md->deny)); + while (s) { + char *who = s->data; + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } + s = s->next; + } + g_slist_free(md->deny); + md->deny = NULL; +} + +static void msn_add_permit(struct gaim_connection *gc, char *who) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + + g_snprintf(buf, sizeof(buf), "ADD %d AL %s %s\n", ++md->trId, who, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } +} + +static void msn_rem_permit(struct gaim_connection *gc, char *who) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + + g_snprintf(buf, sizeof(buf), "REM %d AL %s\n", ++md->trId, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } +} + +static void msn_add_deny(struct gaim_connection *gc, char *who) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + + g_snprintf(buf, sizeof(buf), "ADD %d BL %s %s\n", ++md->trId, who, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } +} + +static void msn_rem_deny(struct gaim_connection *gc, char *who) +{ + struct msn_data *md = gc->proto_data; + char buf[MSN_BUF_LEN]; + + g_snprintf(buf, sizeof(buf), "REM %d BL %s\n", ++md->trId, who); + if (msn_write(md->fd, buf, strlen(buf)) < 0) { + hide_login_progress(gc, "Write error"); + signoff(gc); + return; + } +} + static struct prpl *my_protocol = NULL; void msn_init(struct prpl *ret) @@ -1503,6 +1674,12 @@ ret->do_action = msn_do_action; ret->actions = msn_actions; ret->convo_closed = msn_convo_closed; + ret->keepalive = msn_keepalive; + ret->set_permit_deny = msn_set_permit_deny; + ret->add_permit = msn_add_permit; + ret->rem_permit = msn_rem_permit; + ret->add_deny = msn_add_deny; + ret->rem_deny = msn_rem_deny; my_protocol = ret; } |
From: Eric W. <war...@us...> - 2001-10-24 10:23:52
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv20366/src Modified Files: core.h list.c multi.c Log Message: you're the one that i want (you're the one i wa-ant) oo oo oo you're all i need oh yes indeed Index: core.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- core.h 2001/10/17 20:24:11 1.10 +++ core.h 2001/10/24 10:23:48 1.11 @@ -150,6 +150,7 @@ extern int bud_list_cache_exists(struct gaim_connection *); extern void toc_build_config(struct gaim_connection *, char *, int len, gboolean); extern void parse_toc_buddy_list(struct gaim_connection *, char *); +extern void signoff_blocked(struct gaim_connection *); /* Functions in core.c */ extern gint UI_write(struct UI *, guchar *, int); Index: list.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/list.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- list.c 2001/10/23 20:56:24 1.6 +++ list.c 2001/10/24 10:23:48 1.7 @@ -775,3 +775,63 @@ g_free(g_screenname); g_free(file); } + +static gboolean is_blocked(struct buddy *b) +{ + struct gaim_connection *gc = b->gc; + + if (gc->permdeny == PERMIT_ALL) + return FALSE; + + if (gc->permdeny == PERMIT_NONE) { + if (g_strcasecmp(b->name, gc->displayname)) + return TRUE; + else + return FALSE; + } + + if (gc->permdeny == PERMIT_SOME) { + char *x = g_strdup(normalize(b->name)); + GSList *s = gc->permit; + while (s) { + if (!g_strcasecmp(x, normalize(s->data))) + break; + s = s->next; + } + g_free(x); + if (s) + return FALSE; + return TRUE; + } + + if (gc->permdeny == DENY_SOME) { + char *x = g_strdup(normalize(b->name)); + GSList *s = gc->deny; + while (s) { + if (!g_strcasecmp(x, normalize(s->data))) + break; + s = s->next; + } + g_free(x); + if (s) + return TRUE; + return FALSE; + } + + return FALSE; +} + +void signoff_blocked(struct gaim_connection *gc) +{ + GSList *g = gc->groups; + while (g) { + GSList *m = ((struct group *)g->data)->members; + while (m) { + struct buddy *b = m->data; + if (is_blocked(b)) + serv_got_update(gc, b->name, 0, 0, 0, 0, 0, 0); + m = m->next; + } + g = g->next; + } +} Index: multi.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/multi.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -d -r1.96 -r1.97 --- multi.c 2001/10/21 19:49:20 1.96 +++ multi.c 2001/10/24 10:23:48 1.97 @@ -107,6 +107,16 @@ } g_free(m); } + g = gc->permit; + while (g) { + g_free(g->data); + g = g_slist_remove(g, g->data); + } + g = gc->deny; + while (g) { + g_free(g->data); + g = g_slist_remove(g, g->data); + } g_free(gc); #ifndef USE_APPLET if (!connections && mainwindow) |
From: Eric W. <war...@us...> - 2001-10-24 10:23:52
|
Update of /cvsroot/gaim/gaim/src/protocols/oscar In directory usw-pr-cvs1:/tmp/cvs-serv20366/src/protocols/oscar Modified Files: oscar.c Log Message: you're the one that i want (you're the one i wa-ant) oo oo oo you're all i need oh yes indeed Index: oscar.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/oscar/oscar.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- oscar.c 2001/10/23 20:56:25 1.49 +++ oscar.c 2001/10/24 10:23:49 1.50 @@ -2697,6 +2697,7 @@ default: break; } + signoff_blocked(gc); } static void oscar_add_permit(struct gaim_connection *gc, char *who) { |
From: Eric W. <war...@us...> - 2001-10-24 10:23:52
|
Update of /cvsroot/gaim/gaim/src/protocols/toc In directory usw-pr-cvs1:/tmp/cvs-serv20366/src/protocols/toc Modified Files: toc.c Log Message: you're the one that i want (you're the one i wa-ant) oo oo oo you're all i need oh yes indeed Index: toc.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/toc/toc.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- toc.c 2001/10/23 08:06:09 1.29 +++ toc.c 2001/10/24 10:23:49 1.30 @@ -1237,6 +1237,7 @@ g_snprintf(buf2, sizeof(buf2), "toc_add_permit %s", normalize(who)); sflap_send(gc, buf2, -1, TYPE_DATA); toc_set_config(gc); + signoff_blocked(gc); } static void toc_add_deny(struct gaim_connection *gc, char *who) @@ -1247,6 +1248,7 @@ g_snprintf(buf2, sizeof(buf2), "toc_add_deny %s", normalize(who)); sflap_send(gc, buf2, -1, TYPE_DATA); toc_set_config(gc); + signoff_blocked(gc); } static void toc_set_permit_deny(struct gaim_connection *gc) @@ -1312,6 +1314,7 @@ break; } toc_set_config(gc); + signoff_blocked(gc); } static void toc_rem_permit(struct gaim_connection *gc, char *who) |
From: Eric W. <war...@us...> - 2001-10-24 10:23:51
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv20366 Modified Files: ChangeLog TODO Log Message: you're the one that i want (you're the one i wa-ant) oo oo oo you're all i need oh yes indeed Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.343 retrieving revision 1.344 diff -u -d -r1.343 -r1.344 --- ChangeLog 2001/10/24 01:42:47 1.343 +++ ChangeLog 2001/10/24 10:23:48 1.344 @@ -21,6 +21,7 @@ * When someone adds you to their buddy list, it asks if you want to add them as well (Yahoo, ICQ, and MSN) (thanks Nathan Walp) * Option to grey idle buddies (thanks Nathan Walp) + * MSN Privacy Options version 0.46 (10/18/2001): * New applet icons (courtesy David Raeman) Index: TODO =================================================================== RCS file: /cvsroot/gaim/gaim/TODO,v retrieving revision 1.124 retrieving revision 1.125 diff -u -d -r1.124 -r1.125 --- TODO 2001/10/24 01:42:47 1.124 +++ TODO 2001/10/24 10:23:48 1.125 @@ -46,7 +46,6 @@ New User Registration MSN: - Permit/Deny Need some way of indicating "invite" in IM window File Transfer |