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-13 00:06:21
|
Update of /cvsroot/gaim/gaim/src/protocols/icq In directory usw-pr-cvs1:/tmp/cvs-serv11034/src/protocols/icq Modified Files: eventhandle.c filesession.c icqevent.c queue.c tcplink.c Log Message: Wall! Index: eventhandle.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/eventhandle.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- eventhandle.c 2001/07/31 01:00:38 1.1 +++ eventhandle.c 2001/10/13 00:06:18 1.2 @@ -95,7 +95,6 @@ void icq_HandleChatRequestEvent(icq_Event *pbase, icq_Link *icqlink) { - icq_ChatRequestEvent *pevent=(icq_ChatRequestEvent *)pbase; icq_MessageEvent *pmsgevent=(icq_MessageEvent *)pmsgevent; struct tm *ptime=localtime(&(pbase->time)); Index: filesession.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/filesession.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- filesession.c 2001/07/31 01:00:38 1.1 +++ filesession.c 2001/10/13 00:06:18 1.2 @@ -37,6 +37,7 @@ #include "icqlib.h" #include "filesession.h" #include "stdpackets.h" +#include "socketmanager.h" icq_FileSession *icq_FileSessionNew(icq_Link *icqlink) { @@ -115,7 +116,7 @@ status, NULL); if (status == FILE_STATUS_SENDING) icq_SocketSetHandler(p->tcplink->socket, ICQ_SOCKET_WRITE, - icq_FileSessionSendData, p); + (icq_SocketHandler)icq_FileSessionSendData, p); else icq_SocketSetHandler(p->tcplink->socket, ICQ_SOCKET_WRITE, NULL, NULL); } Index: icqevent.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/icqevent.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- icqevent.c 2001/07/31 01:00:38 1.1 +++ icqevent.c 2001/10/13 00:06:18 1.2 @@ -382,7 +382,6 @@ void icq_FileParsePacket(icq_Event *pbase, icq_Packet *p) { icq_FileRequestEvent *pevent=(icq_FileRequestEvent *)pbase; - int port; /* parse header and message data */ icq_MessageParsePacket(pbase, p); Index: queue.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/queue.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- queue.c 2001/07/31 01:00:38 1.1 +++ queue.c 2001/10/13 00:06:18 1.2 @@ -26,6 +26,7 @@ #include "icqlib.h" #include "queue.h" +#include "udp.h" void icq_UDPQueueNew(icq_Link *icqlink) { Index: tcplink.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/tcplink.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- tcplink.c 2001/07/31 01:00:38 1.1 +++ tcplink.c 2001/10/13 00:06:18 1.2 @@ -47,6 +47,7 @@ #include "chatsession.h" #include "filesession.h" #include "contacts.h" +#include "socketmanager.h" icq_TCPLink *icq_TCPLinkNew(icq_Link *icqlink) { @@ -453,7 +454,7 @@ #endif /* TCP_PACKET_TRACE */ icq_SocketSetHandler(plink->socket, ICQ_SOCKET_WRITE, - icq_TCPLinkOnConnect, plink); + (icq_SocketHandler)icq_TCPLinkOnConnect, plink); plink->connect_timeout=icq_TimeoutNew(TCP_LINK_CONNECT_TIMEOUT, (icq_TimeoutHandler)icq_TCPLinkClose, plink); @@ -492,7 +493,7 @@ /* install socket handler for new socket */ icq_SocketSetHandler(socket_fd, ICQ_SOCKET_READ, - icq_TCPLinkOnDataReceived, pnewlink); + (icq_SocketHandler)icq_TCPLinkOnDataReceived, pnewlink); } /* set the socket to non-blocking */ @@ -542,7 +543,7 @@ plink->mode|=TCP_LINK_MODE_LISTEN; - icq_SocketSetHandler(plink->socket, ICQ_SOCKET_READ, icq_TCPLinkAccept, + icq_SocketSetHandler(plink->socket, ICQ_SOCKET_READ, (icq_SocketHandler)icq_TCPLinkAccept, plink); return 0; @@ -758,7 +759,7 @@ { icq_SocketSetHandler(plink->socket, ICQ_SOCKET_WRITE, NULL, NULL); icq_SocketSetHandler(plink->socket, ICQ_SOCKET_READ, - icq_TCPLinkOnConnect, plink); + (icq_SocketHandler)icq_TCPLinkOnConnect, plink); return; } @@ -776,7 +777,7 @@ plink->mode&= ~TCP_LINK_MODE_CONNECTING; icq_SocketSetHandler(plink->socket, ICQ_SOCKET_READ, - icq_TCPLinkOnDataReceived, plink); + (icq_SocketHandler)icq_TCPLinkOnDataReceived, plink); icq_SocketSetHandler(plink->socket, ICQ_SOCKET_WRITE, NULL, NULL); /* socket is now connected, notify each request that connection |
From: Eric W. <war...@us...> - 2001-10-13 00:06:20
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv11034 Modified Files: ChangeLog Log Message: Wall! Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.313 retrieving revision 1.314 diff -u -d -r1.313 -r1.314 --- ChangeLog 2001/10/11 21:12:27 1.313 +++ ChangeLog 2001/10/13 00:06:18 1.314 @@ -5,6 +5,7 @@ * ICQ works on big-endian platforms, e.g. sparc and ppc (thanks to Nathan Walp and Ben Miller) * Better applet icon drawing (thanks to Ari Pollak) + * An extraordinary number of bug fixes version 0.45 (10/04/2001): * New plugin event: event_chat_send_invite |
From: Eric W. <war...@us...> - 2001-10-12 22:51:13
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv13605 Added Files: raw.c Removed Files: rawjab.c toc_commands.c Log Message: i don't know why i added irc. --- NEW FILE: raw.c --- #define GAIM_PLUGINS #include "gaim.h" #include "prpl.h" #ifdef MAX #undef MAX #undef MIN #endif #include "jabber/jabber.h" static GtkWidget *window = NULL; static GtkWidget *optmenu = NULL; static struct gaim_connection *gc = NULL; static GModule *me = NULL; /* this is an evil hack. * gc->proto_data for Jabber connections can be cast to a jconn *. * gc->proto_data for MSN, TOC, and IRC connections can be cast to an int *. */ char *name() { return "Raw"; } char *description() { return "Lets you send raw XML to Jabber, or raw commands to MSN, IRC, and TOC." " Not very useful except for debugging. Hit 'enter' in the entry to send." " Watch the debug window."; } static int goodbye() { gaim_plugin_unload(me); return FALSE; } static void send_it(GtkEntry *entry) { char *txt; if (!gc) return; txt = gtk_entry_get_text(entry); switch (gc->protocol) { case PROTO_TOC: { int *a = (int *)gc->proto_data; unsigned short seqno = htons(a[1]++ & 0xffff); unsigned short len = htons(strlen(txt) + 1); write(*a, "*\002", 2); write(*a, &seqno, 2); write(*a, &len, 2); write(*a, txt, ntohs(len)); debug_printf("TOC C: %s\n", txt); } break; case PROTO_MSN: write(*(int *)gc->proto_data, txt, strlen(txt)); write(*(int *)gc->proto_data, "\r\n", 2); debug_printf("MSN C: %s\n", txt); break; case PROTO_IRC: write(*(int *)gc->proto_data, txt, strlen(txt)); write(*(int *)gc->proto_data, "\r\n", 2); debug_printf("IRC C: %s\n", txt); break; case PROTO_JABBER: jab_send_raw(*(jconn *)gc->proto_data, txt); break; } gtk_entry_set_text(entry, ""); } static void set_gc(gpointer d, struct gaim_connection *c) { gc = c; } static void redo_optmenu(struct gaim_connection *arg, gpointer x) { GtkWidget *menu; GSList *g = connections; struct gaim_connection *c; menu = gtk_menu_new(); gc = NULL; while (g) { char buf[256]; GtkWidget *opt; c = (struct gaim_connection *)g->data; g = g->next; if (x && c == arg) continue; if (c->protocol != PROTO_TOC && c->protocol != PROTO_MSN && c->protocol != PROTO_IRC && c->protocol != PROTO_JABBER) continue; if (!gc) gc = c; g_snprintf(buf, sizeof buf, "%s (%s)", c->username, (*c->prpl->name)()); opt = gtk_menu_item_new_with_label(buf); gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(set_gc), c); gtk_widget_show(opt); gtk_menu_append(GTK_MENU(menu), opt); } gtk_option_menu_remove_menu(GTK_OPTION_MENU(optmenu)); gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu), menu); gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), 0); } char *gaim_plugin_init(GModule *h) { GtkWidget *hbox; GtkWidget *entry; me = h; gaim_signal_connect(h, event_signon, redo_optmenu, NULL); gaim_signal_connect(h, event_signoff, redo_optmenu, me); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(goodbye), NULL); hbox = gtk_hbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(window), hbox); optmenu = gtk_option_menu_new(); gtk_box_pack_start(GTK_BOX(hbox), optmenu, FALSE, FALSE, 5); redo_optmenu(NULL, NULL); entry = gtk_entry_new(); gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 5); gtk_signal_connect(GTK_OBJECT(entry), "activate", GTK_SIGNAL_FUNC(send_it), NULL); gtk_widget_show_all(window); return NULL; } void gaim_plugin_remove() { if (window) gtk_widget_destroy(window); window = NULL; me = NULL; } --- rawjab.c DELETED --- --- toc_commands.c DELETED --- |
From: Eric W. <war...@us...> - 2001-10-12 22:31:15
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv6509 Modified Files: module.c plugins.c ui.h Log Message: don't ask Index: module.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/module.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- module.c 2001/10/09 22:14:56 1.10 +++ module.c 2001/10/12 22:31:12 1.11 @@ -174,6 +174,29 @@ void gaim_plugin_unload(GModule *handle) { + GList *pl = plugins; + struct gaim_plugin *p; + void (*gaim_plugin_remove)(); + + while (pl) { + p = pl->data; + if (p->handle == handle) + break; + pl = pl->next; + } + if (!pl) + return; + + debug_printf("Unloading %s\n", g_module_name(p->handle)); + + if (g_module_symbol(p->handle, "gaim_plugin_remove", (gpointer *)&gaim_plugin_remove)) + (*gaim_plugin_remove)(); + plugin_remove_callbacks(p->handle); + plugins = g_list_remove(plugins, p); + g_free(p); + /* XXX CUI need to tell UI what happened, but not like this */ + update_show_plugins(); + g_timeout_add(5000, unload_timeout, handle); } Index: plugins.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/plugins.c,v retrieving revision 1.84 retrieving revision 1.85 diff -u -d -r1.84 -r1.85 --- plugins.c 2001/10/01 15:49:04 1.84 +++ plugins.c 2001/10/12 22:31:12 1.85 @@ -88,7 +88,7 @@ static void load_file(GtkWidget *, gpointer); static void load_which_plugin(GtkWidget *, gpointer); static void list_clicked(GtkWidget *, struct gaim_plugin *); -static void update_show_plugins(); +void update_show_plugins(); static void hide_plugins(GtkWidget *, gpointer); /* ------------------ Code Below ---------------------------- */ @@ -283,7 +283,7 @@ gtk_widget_show(plugwindow); } -static void update_show_plugins() +void update_show_plugins() { GList *plugs = plugins; struct gaim_plugin *p; Index: ui.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/ui.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- ui.h 2001/10/12 21:12:56 1.7 +++ ui.h 2001/10/12 22:31:12 1.8 @@ -401,6 +401,7 @@ /* Functions in plugins.c */ #ifdef GAIM_PLUGINS extern void show_plugins(GtkWidget *, gpointer); +extern void update_show_plugins(); /* this is a hack and will be removed */ #endif /* Functions in prefs.c */ |
From: Eric W. <war...@us...> - 2001-10-12 22:31:15
|
Update of /cvsroot/gaim/gaim/src/protocols/msn In directory usw-pr-cvs1:/tmp/cvs-serv6509/protocols/msn Modified Files: msn.c Log Message: don't ask Index: msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- msn.c 2001/09/28 07:46:36 1.21 +++ msn.c 2001/10/12 22:31:12 1.22 @@ -619,7 +619,7 @@ signoff(gc); return; } - debug_printf("S: %s", buf); + debug_printf("MSN S: %s", buf); g_strchomp(buf); if (!g_strncasecmp(buf, "ADD", 3)) { @@ -982,7 +982,7 @@ signoff(gc); return; } - debug_printf("S: %s", buf); + debug_printf("MSN S: %s", buf); g_strchomp(buf); if (!g_strncasecmp(buf, "VER", 3)) { |
From: Eric W. <war...@us...> - 2001-10-12 21:12:59
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv20450 Modified Files: dialogs.c gaim.h ui.h Log Message: select which connection to import to Index: dialogs.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v retrieving revision 1.257 retrieving revision 1.258 diff -u -d -r1.257 -r1.258 --- dialogs.c 2001/10/10 04:16:41 1.257 +++ dialogs.c 2001/10/12 21:12:56 1.258 @@ -86,7 +86,8 @@ static GtkWidget *imdialog = NULL; /*I only want ONE of these :) */ static GtkWidget *infodialog = NULL; static GList *dialogwindows = NULL; -static GtkWidget *exportdialog, *importdialog; +static GtkWidget *importdialog; +static struct gaim_connection *importgc; static GtkWidget *icondlg; static GtkWidget *aliasdlg = NULL; static GtkWidget *aliasentry = NULL; @@ -277,11 +278,10 @@ if (dest == infodialog) infodialog = NULL; - if (dest == exportdialog) - exportdialog = NULL; - - if (dest == importdialog) + if (dest == importdialog) { importdialog = NULL; + importgc = NULL; + } if (dest == icondlg) icondlg = NULL; @@ -329,11 +329,6 @@ infodialog = NULL; } - if (exportdialog) { - destroy_dialog(NULL, exportdialog); - exportdialog = NULL; - } - if (importdialog) { destroy_dialog(NULL, importdialog); importdialog = NULL; @@ -2616,11 +2611,59 @@ if (file_is_dir(file, importdialog)) { return; } - /* FIXME : import buddy list file. moderately important */ - do_import(connections->data, file); + do_import(importgc, file); + do_export(importgc); destroy_dialog(NULL, importdialog); - importdialog = NULL; - do_export(connections->data); +} + +static void set_import_gc(gpointer data, struct gaim_connection *gc) +{ + importgc = gc; +} + +static void create_import_dropdown(GtkFileSelection *fs) +{ + GtkWidget *hbox; + GtkWidget *label; + GSList *g = connections; + struct gaim_connection *c; + GtkWidget *optmenu; + GtkWidget *menu; + char buf[256]; + GtkWidget *opt; + + if (!connections) + return; + importgc = connections->data; + if (!connections->next) + return; + + hbox = gtk_hbox_new(FALSE, 0); + gtk_box_pack_end(GTK_BOX(fs->action_area), hbox, FALSE, FALSE, 0); + gtk_widget_show(hbox); + + optmenu = gtk_option_menu_new(); + gtk_box_pack_end(GTK_BOX(hbox), optmenu, FALSE, FALSE, 5); + gtk_widget_show(optmenu); + + label = gtk_label_new(_("Import to:")); + gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 5); + gtk_widget_show(label); + + menu = gtk_menu_new(); + + while (g) { + c = (struct gaim_connection *)g->data; + g_snprintf(buf, sizeof buf, "%s (%s)", c->username, (*c->prpl->name)()); + opt = gtk_menu_item_new_with_label(buf); + gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(set_import_gc), c); + gtk_widget_show(opt); + gtk_menu_append(GTK_MENU(menu), opt); + g = g->next; + } + + gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu), menu); + gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), 0); } void show_import_dialog() @@ -2641,45 +2684,14 @@ "clicked", GTK_SIGNAL_FUNC(do_import_dialog), NULL); gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(importdialog)->cancel_button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), importdialog); - + create_import_dropdown(GTK_FILE_SELECTION(importdialog)); } g_free(buf); gtk_widget_show(importdialog); gdk_window_raise(importdialog->window); } - -/* -void show_export_dialog() -{ - char *buf = g_malloc(BUF_LEN); - if (!exportdialog) { - exportdialog = gtk_file_selection_new(_("Gaim - Export Buddy List")); - - gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(exportdialog)); - - g_snprintf(buf, BUF_LEN - 1, "%s/gaim.buddy", getenv("HOME")); - - gtk_file_selection_set_filename(GTK_FILE_SELECTION(exportdialog), buf); - gtk_signal_connect(GTK_OBJECT(exportdialog), "destroy", - GTK_SIGNAL_FUNC(destroy_dialog), exportdialog); - - gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(exportdialog)->ok_button), - "clicked", GTK_SIGNAL_FUNC(do_export), (void*)1); - gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(exportdialog)->cancel_button), - "clicked", GTK_SIGNAL_FUNC(destroy_dialog), exportdialog); - - - } - - g_free(buf); - - gtk_widget_show(exportdialog); - gdk_window_raise(exportdialog->window); - -} -*/ /*------------------------------------------------------------------------*/ /* The dialog for new away messages */ Index: gaim.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/gaim.h,v retrieving revision 1.281 retrieving revision 1.282 diff -u -d -r1.281 -r1.282 --- gaim.h 2001/10/06 04:05:50 1.281 +++ gaim.h 2001/10/12 21:12:56 1.282 @@ -179,7 +179,6 @@ /* Globals in aim.c */ extern GList *buddy_pounces; extern GList *conversations; -extern GtkWidget *mainwindow; extern int opt_away; extern char *opt_away_arg; extern char *opt_rcfile_arg; Index: ui.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/ui.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- ui.h 2001/10/06 04:05:53 1.6 +++ ui.h 2001/10/12 21:12:56 1.7 @@ -220,6 +220,7 @@ /* Globals in aim.c */ extern GList *log_conversations; /* this should be moved to conversations.c */ extern GSList *away_messages; /* this should be moved to away.c */ +extern GtkWidget *mainwindow; /* Globals in away.c */ extern struct away_message *awaymessage; |
From: Eric W. <war...@us...> - 2001-10-12 18:24:49
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv2788 Modified Files: applet.c Log Message: hm Index: applet.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/applet.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- applet.c 2001/10/12 07:17:48 1.17 +++ applet.c 2001/10/12 18:24:46 1.18 @@ -225,7 +225,7 @@ applet_widget_unregister_callback(APPLET_WIDGET(applet), awayname); awy = g_slist_next(awy); - free(awayname); + g_free(awayname); } applet_widget_unregister_callback_dir(APPLET_WIDGET(applet), "away/"); applet_widget_unregister_callback(APPLET_WIDGET(applet), "away"); |
From: Eric W. <war...@us...> - 2001-10-12 18:04:18
|
Update of /cvsroot/gaim/gaim/src/protocols/yahoo In directory usw-pr-cvs1:/tmp/cvs-serv30455/protocols/yahoo Modified Files: yay.c Log Message: send offline properly Index: yay.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/yahoo/yay.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- yay.c 2001/09/28 07:46:36 1.16 +++ yay.c 2001/10/12 18:04:15 1.17 @@ -399,9 +399,9 @@ if ((flags & IM_FLAG_AWAY)|| !strlen(message)) return 0; if (flags & IM_FLAG_CHECKBOX) - yahoo_send_message(yd->sess, yd->active_id, who, message); - else yahoo_send_message_offline(yd->sess, yd->active_id, who, message); + else + yahoo_send_message(yd->sess, yd->active_id, who, message); return 1; } |
From: Eric W. <war...@us...> - 2001-10-12 17:35:27
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv22683 Modified Files: lagmeter.c Log Message: use username for oscar and toc Index: lagmeter.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/lagmeter.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- lagmeter.c 2001/10/10 22:25:33 1.17 +++ lagmeter.c 2001/10/12 17:35:22 1.18 @@ -99,8 +99,7 @@ g_free(buf); } else serv_send_im(my_gc, my_gc->username, m, 1); - } else if ((my_gc->protocol <= PROTO_OSCAR || my_gc->protocol == PROTO_IRC) - && strcmp(my_gc->username, my_gc->displayname)) + } else if (my_gc->protocol == PROTO_IRC && strcmp(my_gc->username, my_gc->displayname)) serv_send_im(my_gc, my_gc->displayname, m, 1); else serv_send_im(my_gc, my_gc->username, m, 1); |
From: Eric W. <war...@us...> - 2001-10-12 07:17:52
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv23524 Modified Files: applet.c Log Message: msg pending works again. Index: applet.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/applet.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- applet.c 2001/10/11 22:53:19 1.16 +++ applet.c 2001/10/12 07:17:48 1.17 @@ -115,7 +115,6 @@ if ((away_options & OPT_AWAY_QUEUE) && message_queue) { GSList *m = message_queue; - int dsr = 0; while (m) { struct queued_message *qm = m->data; if (qm->flags & WFLAG_RECV) |
From: Eric W. <war...@us...> - 2001-10-12 06:59:28
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv19429 Modified Files: perl.c Log Message: whoops Index: perl.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/perl.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -d -r1.59 -r1.60 --- perl.c 2001/09/30 19:58:48 1.59 +++ perl.c 2001/10/12 06:59:25 1.60 @@ -324,7 +324,6 @@ case 2: { struct gaim_connection *gc = (struct gaim_connection *)SvIV(ST(1)); - debug_printf("%lu %lu\n", connections->data, gc); if (g_slist_find(connections, gc)) XST_mIV(i++, gc->protocol); else @@ -334,7 +333,6 @@ case 3: { struct gaim_connection *gc = (struct gaim_connection *)SvIV(ST(1)); - debug_printf("%lu %lu\n", connections->data, gc); if (g_slist_find(connections, gc)) XST_mPV(i++, gc->username); else @@ -344,7 +342,6 @@ case 4: { struct gaim_connection *gc = (struct gaim_connection *)SvIV(ST(1)); - debug_printf("%lu %lu\n", connections->data, gc); if (g_slist_find(connections, gc)) XST_mIV(i++, g_slist_index(aim_users, gc->user)); else @@ -374,7 +371,6 @@ case 7: { struct gaim_connection *gc = (struct gaim_connection *)SvIV(ST(1)); - debug_printf("%lu %lu\n", connections->data, gc); if (g_slist_find(connections, gc)) XST_mPV(i++, (*gc->prpl->name)()); else @@ -609,6 +605,7 @@ c = find_conversation(nick); if (!c) c = new_conversation(nick); + set_convo_gc(c, gc); write_to_conv(c, what, WFLAG_SEND, NULL, time((time_t)NULL)); serv_send_im(c->gc, nick, what, isauto ? IM_FLAG_AWAY : 0); XSRETURN(0); |
From: Eric W. <war...@us...> - 2001-10-12 06:06:43
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv1929 Modified Files: conversation.c Log Message: hi sean Index: conversation.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/conversation.c,v retrieving revision 1.277 retrieving revision 1.278 diff -u -d -r1.277 -r1.278 --- conversation.c 2001/10/11 07:49:02 1.277 +++ conversation.c 2001/10/12 06:06:40 1.278 @@ -1979,9 +1979,9 @@ create_convo_menu(C); if (g_slist_find(connections, C->gc)) - continue; - - set_convo_gc(C, connections ? connections->data : NULL); + set_convo_gc(C, C->gc); + else + set_convo_gc(C, connections ? connections->data : NULL); } } |
From: Eric W. <war...@us...> - 2001-10-11 22:53:22
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv22299 Modified Files: applet.c Log Message: handle size changes better. Index: applet.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/applet.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- applet.c 2001/10/11 21:11:22 1.15 +++ applet.c 2001/10/11 22:53:19 1.16 @@ -55,7 +55,7 @@ GdkPixmap *cache; GdkGC *gc; char *path; - GdkPixbuf *pb; + GdkPixbuf *pb, *scale; guchar *dst, *p; double affine[6]; int r,g,b,i; @@ -66,17 +66,18 @@ gdk_gc_copy(gc, applet->style->bg_gc[GTK_WIDGET_STATE(applet)]); path = gnome_pixmap_file(name); - pb = gdk_pixbuf_new_from_file(path); + scale = gdk_pixbuf_new_from_file(path); g_free(path); - if (!pb) + if (!scale) return NULL; + pb = gdk_pixbuf_scale_simple(scale, sizehint, sizehint, GDK_INTERP_HYPER); dst = g_new0(guchar, sizehint*sizehint*3); r = applet->style->bg[GTK_WIDGET_STATE(applet)].red>>8; g = applet->style->bg[GTK_WIDGET_STATE(applet)].green>>8; b = applet->style->bg[GTK_WIDGET_STATE(applet)].blue>>8; p = dst; - for (i = 0; i < 48*48; i++) { + for (i = 0; i < sizehint * sizehint; i++) { *p++ = r; *p++ = g; *p++ = b; @@ -319,11 +320,6 @@ GdkPixmap *pm; applet_widget_init("GAIM", VERSION, argc, argv, NULL, 0, NULL); - - /*init imlib for graphics */ - gdk_imlib_init(); - gtk_widget_push_visual(gdk_imlib_get_visual()); - gtk_widget_push_colormap(gdk_imlib_get_colormap()); applet = applet_widget_new("gaim_applet"); if (!applet) |
From: Eric W. <war...@us...> - 2001-10-11 21:12:30
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv24403 Modified Files: ChangeLog Log Message: creds Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.312 retrieving revision 1.313 diff -u -d -r1.312 -r1.313 --- ChangeLog 2001/10/10 19:58:11 1.312 +++ ChangeLog 2001/10/11 21:12:27 1.313 @@ -4,6 +4,7 @@ * New applet icons (courtesy David Raeman) * ICQ works on big-endian platforms, e.g. sparc and ppc (thanks to Nathan Walp and Ben Miller) + * Better applet icon drawing (thanks to Ari Pollak) version 0.45 (10/04/2001): * New plugin event: event_chat_send_invite |
From: Eric W. <war...@us...> - 2001-10-11 21:11:25
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv24048 Modified Files: aim.c applet.c Log Message: yay Index: aim.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/aim.c,v retrieving revision 1.164 retrieving revision 1.165 diff -u -d -r1.164 -r1.165 --- aim.c 2001/10/11 07:19:20 1.164 +++ aim.c 2001/10/11 21:11:22 1.165 @@ -748,8 +748,6 @@ "plugins", _("Plugins"), GTK_SIGNAL_FUNC(show_plugins), NULL); #endif /* GAIM_PLUGINS */ - update_pixmaps(); - if (!opt_acct) auto_login(); Index: applet.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/applet.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- applet.c 2001/10/09 23:40:18 1.14 +++ applet.c 2001/10/11 21:11:22 1.15 @@ -32,83 +32,82 @@ #endif #ifdef USE_APPLET #include <string.h> -#include <gdk_imlib.h> +#include <gdk-pixbuf/gdk-pixbuf.h> +#include <libart_lgpl/art_affine.h> +#include <libart_lgpl/art_rgb_affine.h> +#include <libart_lgpl/art_rgb_rgba_affine.h> #include "gaim.h" #include "applet.h" +#include "pixmaps/aimicon.xpm" static int connecting = 0; gboolean applet_buddy_show = FALSE; -GtkWidget *applet_popup = NULL; GtkWidget *applet; -GtkWidget *appletframe; - -GtkWidget *icon; -GdkPixmap *icon_offline_pm = NULL; -GdkPixmap *icon_offline_bm = NULL; - -GdkPixmap *icon_online_pm = NULL; -GdkPixmap *icon_online_bm = NULL; - -GdkPixmap *icon_connect_pm = NULL; -GdkPixmap *icon_connect_bm = NULL; - -GdkPixmap *icon_msg_pending_pm = NULL; -GdkPixmap *icon_msg_pending_bm = NULL; - -GdkPixmap *icon_away_pm = NULL; -GdkPixmap *icon_away_bm = NULL; +static GtkWidget *icon; static GtkAllocation get_applet_pos(gboolean); -gint sizehint = 48; +static gint sizehint = 48; -static gboolean load_applet_icon(const char *name, int height, int width, GdkPixmap **pm, GdkBitmap **bm) +static GdkPixmap *get_applet_icon(const char *name) { - gboolean result = TRUE; + GdkPixmap *cache; + GdkGC *gc; char *path; - GdkImlibImage *im; - - path = gnome_pixmap_file(name); - - im = gdk_imlib_load_image(path); - - if ((*pm) != NULL) - gdk_imlib_free_pixmap((*pm)); + GdkPixbuf *pb; + guchar *dst, *p; + double affine[6]; + int r,g,b,i; - if (im != NULL) { - gdk_imlib_render(im, width, height); + cache = gdk_pixmap_new(applet->window, sizehint, sizehint, + gtk_widget_get_visual(applet)->depth); + gc = gdk_gc_new(cache); + gdk_gc_copy(gc, applet->style->bg_gc[GTK_WIDGET_STATE(applet)]); - (*pm) = gdk_imlib_move_image(im); - (*bm) = gdk_imlib_move_mask(im); + path = gnome_pixmap_file(name); + pb = gdk_pixbuf_new_from_file(path); + g_free(path); + if (!pb) + return NULL; - } else { - result = FALSE; - debug_printf(_("file not found: %s\n"), path); + dst = g_new0(guchar, sizehint*sizehint*3); + r = applet->style->bg[GTK_WIDGET_STATE(applet)].red>>8; + g = applet->style->bg[GTK_WIDGET_STATE(applet)].green>>8; + b = applet->style->bg[GTK_WIDGET_STATE(applet)].blue>>8; + p = dst; + for (i = 0; i < 48*48; i++) { + *p++ = r; + *p++ = g; + *p++ = b; } - free(path); - return result; -} + art_affine_identity(affine); + art_rgb_rgba_affine(dst, 0, 0, sizehint, sizehint, sizehint * 3, + gdk_pixbuf_get_pixels(pb), + gdk_pixbuf_get_width(pb), gdk_pixbuf_get_height(pb), + gdk_pixbuf_get_rowstride(pb), affine, ART_FILTER_NEAREST, NULL); -#ifdef HAVE_PANEL_PIXEL_SIZE -static void applet_change_pixel_size(GtkWidget *w, int size, gpointer data) -{ - sizehint = size; - update_pixmaps(); + gdk_pixbuf_unref(pb); + gdk_draw_rgb_image(cache, gc, 0, 0, sizehint, sizehint, + GDK_RGB_DITHER_NORMAL, dst, sizehint * 3); + g_free(dst); + + gdk_gc_unref(gc); + return cache; } -#endif static gboolean update_applet() { char buf[BUF_LONG]; GSList *c = connections; + GdkPixmap *newpix; if (connecting) { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_connect_pm, icon_connect_bm); + newpix = get_applet_icon(GAIM_GNOME_CONNECT_ICON); applet_set_tooltips(_("Attempting to sign on....")); } else if (!connections) { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_offline_pm, icon_offline_bm); + newpix = get_applet_icon(GAIM_GNOME_OFFLINE_ICON); applet_set_tooltips(_("Offline. Click to bring up login box.")); } else if (awaymessage) { int dsr = 0; @@ -125,16 +124,16 @@ } if (dsr) { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_msg_pending_pm, icon_msg_pending_bm); + newpix = get_applet_icon(GAIM_GNOME_MSG_PENDING_ICON); g_snprintf(buf, sizeof(buf), _("Away: %d pending."), dsr); } else { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_away_pm, icon_away_bm); + newpix = get_applet_icon(GAIM_GNOME_AWAY_ICON); g_snprintf(buf, sizeof(buf), _("Away.")); } applet_set_tooltips(buf); } else { - gtk_pixmap_set(GTK_PIXMAP(icon), icon_online_pm, icon_online_bm); + newpix = get_applet_icon(GAIM_GNOME_ONLINE_ICON); g_snprintf(buf, sizeof buf, "Online: "); while (c) { strcat(buf, ((struct gaim_connection *)c->data)->username); @@ -145,25 +144,22 @@ applet_set_tooltips(buf); } + if (newpix) { + gtk_pixmap_set(GTK_PIXMAP(icon), newpix, NULL); + gdk_pixmap_unref(newpix); + } + return TRUE; } -void update_pixmaps() +#ifdef HAVE_PANEL_PIXEL_SIZE +static void applet_change_pixel_size(GtkWidget *w, int size, gpointer data) { - load_applet_icon(GAIM_GNOME_OFFLINE_ICON, (sizehint - 1), (sizehint - 1), - &icon_offline_pm, &icon_offline_bm); - load_applet_icon(GAIM_GNOME_CONNECT_ICON, (sizehint - 1), (sizehint - 1), - &icon_connect_pm, &icon_connect_bm); - load_applet_icon(GAIM_GNOME_ONLINE_ICON, (sizehint - 1), (sizehint - 1), - &icon_online_pm, &icon_online_bm); - load_applet_icon(GAIM_GNOME_AWAY_ICON, (sizehint - 1), (sizehint - 1), - &icon_away_pm, &icon_away_bm); - load_applet_icon(GAIM_GNOME_MSG_PENDING_ICON, (sizehint - 1), (sizehint - 1), - &icon_msg_pending_pm, &icon_msg_pending_bm); + sizehint = size; + gtk_widget_set_usize(icon, sizehint, sizehint); update_applet(); - gtk_widget_set_usize(appletframe, sizehint, sizehint); } - +#endif extern GtkWidget *mainwindow; void applet_show_login(AppletWidget *widget, gpointer data) @@ -243,7 +239,7 @@ GNOME_Panel_OrientType orient = applet_widget_get_panel_orient(APPLET_WIDGET(applet)); pad = 5; - gdk_window_get_position(gtk_widget_get_parent_window(appletframe), &x, &y); + gdk_window_get_position(gtk_widget_get_parent_window(icon), &x, &y); if (for_blist) { if (blist_options & OPT_BLIST_SAVED_WINDOWS) { buddy_req.width = blist_pos.width; @@ -254,7 +250,7 @@ } else { buddy_req = mainwindow->requisition; } - applet_req = appletframe->requisition; + applet_req = icon->requisition; /* FIXME : we need to be smarter here */ switch (orient) { @@ -320,7 +316,7 @@ gint init_applet_mgr(int argc, char *argv[]) { - GtkWidget *vbox; + GdkPixmap *pm; applet_widget_init("GAIM", VERSION, argc, argv, NULL, 0, NULL); @@ -333,43 +329,16 @@ if (!applet) g_error(_("Can't create GAIM applet!")); gtk_widget_set_events(applet, gtk_widget_get_events(applet) | GDK_BUTTON_PRESS_MASK); - - appletframe = gtk_frame_new(NULL); - gtk_frame_set_shadow_type(GTK_FRAME(appletframe), GTK_SHADOW_NONE); -#ifdef HAVE_PANEL_PIXEL_SIZE - gtk_widget_set_usize(appletframe, 5, 5); -#else - gtk_widget_set_usize(appletframe, 48, 48); -#endif - - /*load offline icon */ - load_applet_icon(GAIM_GNOME_OFFLINE_ICON, 32, 32, &icon_offline_pm, &icon_offline_bm); - - /*load connecting icon */ - load_applet_icon(GAIM_GNOME_CONNECT_ICON, 32, 32, &icon_connect_pm, &icon_connect_bm); - - /*load online icon */ - load_applet_icon(GAIM_GNOME_ONLINE_ICON, 32, 32, &icon_online_pm, &icon_online_bm); - - /*load away icon */ - load_applet_icon(GAIM_GNOME_AWAY_ICON, 32, 32, &icon_away_pm, &icon_away_bm); - - /*load msg_pending icon */ - load_applet_icon(GAIM_GNOME_ONLINE_ICON, 32, 32, &icon_msg_pending_pm, &icon_msg_pending_bm); - - icon = gtk_pixmap_new(icon_offline_pm, icon_offline_bm); - - vbox = gtk_vbox_new(FALSE, 0); - - gtk_box_pack_start(GTK_BOX(vbox), icon, FALSE, TRUE, 0); - - update_applet(); - - gtk_container_add(GTK_CONTAINER(appletframe), vbox); - applet_widget_add(APPLET_WIDGET(applet), appletframe); + gtk_widget_realize(applet); - gtk_widget_show(vbox); - gtk_widget_show(appletframe); + pm = get_applet_icon(GAIM_GNOME_OFFLINE_ICON); + if (!pm) + pm = gdk_pixmap_create_from_xpm_d(applet->window, NULL, + &applet->style->bg[GTK_WIDGET_STATE(applet)], aimicon_xpm); + icon = gtk_pixmap_new(pm, NULL); + gtk_widget_set_usize(icon, sizehint, sizehint); + gdk_pixmap_unref(pm); + applet_widget_add(APPLET_WIDGET(applet), icon); applet_widget_register_stock_callback(APPLET_WIDGET(applet), "about", |
From: Eric W. <war...@us...> - 2001-10-11 07:49:06
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv22958 Modified Files: conversation.c Log Message: fine. Index: conversation.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/conversation.c,v retrieving revision 1.276 retrieving revision 1.277 diff -u -d -r1.276 -r1.277 --- conversation.c 2001/10/09 19:18:41 1.276 +++ conversation.c 2001/10/11 07:49:02 1.277 @@ -605,10 +605,20 @@ gtk_signal_emit_by_name(GTK_OBJECT(entry), "activate", c); gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); } else { + int oldpos; gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); - pos = gtk_editable_get_position(GTK_EDITABLE(entry)); + oldpos = pos = gtk_editable_get_position(GTK_EDITABLE(entry)); gtk_editable_insert_text(GTK_EDITABLE(entry), "\n", 1, &pos); + if (oldpos == pos) + gtk_editable_set_position(GTK_EDITABLE(entry), pos + 1); } + } else if ((event->state & GDK_CONTROL_MASK) && (event->keyval == 'm')) { + int oldpos; + gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); + oldpos = pos = gtk_editable_get_position(GTK_EDITABLE(entry)); + gtk_editable_insert_text(GTK_EDITABLE(entry), "\n", 1, &pos); + if (oldpos == pos) + gtk_editable_set_position(GTK_EDITABLE(entry), pos + 1); } else if (event->state & GDK_CONTROL_MASK) { if (convo_options & OPT_CONVO_CTL_CHARS) { switch (event->keyval) { |
From: Eric W. <war...@us...> - 2001-10-11 07:19:23
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv12504 Modified Files: aim.c core.c Log Message: further updates to gaim-core. ui connects now and protocol basics seem to be working. this should facilitate cui dev. Index: aim.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/aim.c,v retrieving revision 1.163 retrieving revision 1.164 diff -u -d -r1.163 -r1.164 --- aim.c 2001/10/09 19:18:41 1.163 +++ aim.c 2001/10/11 07:19:20 1.164 @@ -37,8 +37,13 @@ #include <gdk/gdkx.h> #include <gdk/gdk.h> #include <unistd.h> +#include <sys/types.h> +#include <sys/socket.h> +#include <sys/stat.h> #include <netinet/in.h> #include <arpa/inet.h> +#include <errno.h> +#include <sys/un.h> #include <sys/wait.h> #include <stdio.h> #include <string.h> @@ -415,6 +420,86 @@ } #endif +static gboolean socket_readable(GIOChannel *source, GIOCondition cond, gpointer ud) +{ + guchar type; + guchar subtype; + guint32 len; + guchar *data; + guint32 x; + + debug_printf("Core says: "); + g_io_channel_read(source, &type, sizeof(type), &x); + if (x == 0) { + debug_printf("CORE IS GONE!\n"); + g_io_channel_close(source); + return FALSE; + } + debug_printf("%d ", type); + g_io_channel_read(source, &subtype, sizeof(subtype), &x); + if (x == 0) { + debug_printf("CORE IS GONE!\n"); + g_io_channel_close(source); + return FALSE; + } + debug_printf("%d ", subtype); + g_io_channel_read(source, (guchar *)&len, sizeof(len), &x); + if (x == 0) { + debug_printf("CORE IS GONE!\n"); + g_io_channel_close(source); + return FALSE; + } + debug_printf("(%d bytes)\n", len); + + data = g_malloc(len); + g_io_channel_read(source, data, len, &x); + if (x != len) { + debug_printf("CORE IS GONE! (read %d/%d bytes)\n", x, len); + g_free(data); + g_io_channel_close(source); + return FALSE; + } + + g_free(data); + return TRUE; +} + +static int open_socket(char *name) +{ + struct sockaddr_un saddr; + gint fd; + + if ((fd = socket(AF_UNIX, SOCK_STREAM, 0)) != -1) { + saddr.sun_family = AF_UNIX; + g_snprintf(saddr.sun_path, 108, "%s", name); + if (connect(fd, (struct sockaddr *)&saddr, sizeof(saddr)) != -1) + return fd; + else + debug_printf("Failed to assign %s to a socket (Error: %s)", + saddr.sun_path, strerror(errno)); + } else + debug_printf("Unable to open socket: %s", strerror(errno)); + close(fd); + return -1; +} + +static int ui_main() +{ + GIOChannel *channel; + int UI_fd; + char name[256]; + + g_snprintf(name, sizeof(name), "%s/gaim_%s.%d", g_get_tmp_dir(), g_get_user_name(), getpid()); + + UI_fd = open_socket(name); + if (UI_fd < 0) + return 1; + + channel = g_io_channel_unix_new(UI_fd); + g_io_add_watch(channel, G_IO_IN | G_IO_HUP | G_IO_ERR, socket_readable, NULL); + return 0; +} + static void set_first_user(char *name) { struct aim_user *u; @@ -623,6 +708,7 @@ load_prefs(); core_main(); + ui_main(); /* set the default username */ if (opt_user_arg != NULL) { @@ -685,6 +771,7 @@ if (convo_options & OPT_CONVO_CHECK_SPELLING) gtkspell_stop(); core_quit(); + /* don't need ui_quit here because ui doesn't create anything */ return 0; Index: core.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- core.c 2001/10/09 20:19:42 1.12 +++ core.c 2001/10/11 07:19:20 1.13 @@ -73,6 +73,8 @@ size = va_arg(args2, int); } + pos -= sizeof(guchar) * 2 + 4; + /* now we do size */ memcpy(buffer + sizeof(guchar) * 2, &pos, 4); @@ -83,14 +85,9 @@ gint UI_write(struct UI *ui, guchar *data, gint len) { - guchar *send = g_new0(guchar, len + 6); gint sent; - send[0] = 'f'; - send[1] = 1; - memcpy(send + 2, &len, sizeof(len)); - memcpy(send + 6, data, len); /* we'll let the write silently fail because the read will pick it up as dead */ - g_io_channel_write(ui->channel, send, len + 6, &sent); + g_io_channel_write(ui->channel, data, len, &sent); return sent; } |
From: Eric W. <war...@us...> - 2001-10-11 01:57:29
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv26863 Modified Files: gaim.spec.in Log Message: this should be better Index: gaim.spec.in =================================================================== RCS file: /cvsroot/gaim/gaim/gaim.spec.in,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- gaim.spec.in 2001/10/10 21:25:42 1.24 +++ gaim.spec.in 2001/10/11 01:57:27 1.25 @@ -88,6 +88,7 @@ %{prefix}/lib/gaim/* %{prefix}/share/locale/*/*/* %{prefix}/share/pixmaps/gaim.xpm +%{prefix}/share/pixmaps/gaim/* %{prefix}/share/gnome/apps/Internet/gaim.desktop %{sysconfdir}/CORBA/servers/* %{prefix}/share/applets/Network/* |
From: Eric W. <war...@us...> - 2001-10-10 22:25:36
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv2111 Modified Files: lagmeter.c Log Message: maybe this will fix some lagmeter oddities. Index: lagmeter.c =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/lagmeter.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- lagmeter.c 2001/09/27 22:48:16 1.16 +++ lagmeter.c 2001/10/10 22:25:33 1.17 @@ -94,12 +94,13 @@ serv_send_im(my_gc, buf, m, 1); g_free(buf); } else if (!strchr(my_gc->username, '/')) { - char *buf = g_strconcat(my_gc->username, "@jabber.org/GAIM", NULL); + char *buf = g_strconcat(my_gc->username, "/GAIM", NULL); serv_send_im(my_gc, buf, m, 1); g_free(buf); } else serv_send_im(my_gc, my_gc->username, m, 1); - } else if (strcmp(my_gc->username, my_gc->displayname)) + } else if ((my_gc->protocol <= PROTO_OSCAR || my_gc->protocol == PROTO_IRC) + && strcmp(my_gc->username, my_gc->displayname)) serv_send_im(my_gc, my_gc->displayname, m, 1); else serv_send_im(my_gc, my_gc->username, m, 1); |
From: Eric W. <war...@us...> - 2001-10-10 21:25:45
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv10627 Modified Files: gaim.spec.in Log Message: these files don't exist anymore Index: gaim.spec.in =================================================================== RCS file: /cvsroot/gaim/gaim/gaim.spec.in,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- gaim.spec.in 2001/09/20 18:00:47 1.23 +++ gaim.spec.in 2001/10/10 21:25:42 1.24 @@ -74,7 +74,7 @@ %files %defattr(-,root,root) %{prefix}/bin/gaim -%doc doc/the_penguin.txt doc/PROTOCOL doc/CREDITS NEWS COPYING AUTHORS doc/FAQ README README.plugins ChangeLog plugins/PERL-HOWTO HACKING +%doc doc/the_penguin.txt doc/CREDITS NEWS COPYING AUTHORS doc/FAQ README ChangeLog plugins/PERL-HOWTO HACKING %attr(755,root,root) %{prefix}/lib/gaim/* %{prefix}/share/locale/*/*/* %{prefix}/share/pixmaps/gaim.xpm @@ -84,7 +84,7 @@ %files applet %defattr(-,root,root) %attr(755,root,root) %{prefix}/bin/gaim_applet -%doc doc/the_penguin.txt doc/PROTOCOL doc/CREDITS NEWS COPYING AUTHORS doc/FAQ README README.plugins ChangeLog plugins/PERL-HOWTO HACKING +%doc doc/the_penguin.txt doc/CREDITS NEWS COPYING AUTHORS doc/FAQ README ChangeLog plugins/PERL-HOWTO HACKING %{prefix}/lib/gaim/* %{prefix}/share/locale/*/*/* %{prefix}/share/pixmaps/gaim.xpm |
From: Eric W. <war...@us...> - 2001-10-10 20:42:22
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv29420 Modified Files: browser.c sound.c Log Message: handle spaces better Index: browser.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/browser.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- browser.c 2001/09/27 19:17:10 1.14 +++ browser.c 2001/10/10 20:42:19 1.15 @@ -611,7 +611,8 @@ *ms = 0; g_snprintf(command, sizeof(command), "%s\"%s\"%s", web_command, url, ms + 2); - } + } else + g_snprintf(command, sizeof(command), web_command); args[0] = "sh"; args[1] = "-c"; Index: sound.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/sound.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- sound.c 2001/10/09 23:15:33 1.39 +++ sound.c 2001/10/10 20:42:19 1.40 @@ -398,7 +398,15 @@ if (sound_cmd[0]) { char *args[4]; char command[4096]; - g_snprintf(command, sizeof command, sound_cmd, filename); + char *ms; + if (strstr(sound_cmd, "\"%s\"")) + g_snprintf(command, sizeof(command), sound_cmd, filename); + else if ((ms = strstr(sound_cmd, "%s")) != NULL) { + *ms = 0; + g_snprintf(command, sizeof(command), "%s\"%s\"%s", sound_cmd, + filename, ms + 2); + } else + g_snprintf(command, sizeof(command), sound_cmd); args[0] = "sh"; args[1] = "-c"; args[2] = command; |
From: Eric W. <war...@us...> - 2001-10-10 20:23:28
|
Update of /cvsroot/gaim/gaim/src In directory usw-pr-cvs1:/tmp/cvs-serv18132 Modified Files: proxy.c Log Message: this way we can do our own check. isn't that nice Index: proxy.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/proxy.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- proxy.c 2001/09/27 19:17:11 1.30 +++ proxy.c 2001/10/10 20:23:25 1.31 @@ -112,7 +112,8 @@ void gaim_input_remove(gint tag) { debug_printf("CLOSURE: removing input watcher %d\n", tag); - g_source_remove(tag); + if (tag > 0) + g_source_remove(tag); } static void no_one_calls(gpointer data, gint source, GaimInputCondition cond) |
From: Eric W. <war...@us...> - 2001-10-10 20:21:27
|
Update of /cvsroot/gaim/gaim/plugins In directory usw-pr-cvs1:/tmp/cvs-serv17490 Modified Files: Makefile.am Log Message: bleh Index: Makefile.am =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/Makefile.am,v retrieving revision 1.55 retrieving revision 1.56 diff -u -d -r1.55 -r1.56 --- Makefile.am 2001/10/10 18:12:09 1.55 +++ Makefile.am 2001/10/10 20:21:24 1.56 @@ -4,7 +4,7 @@ $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) -c $< -o tmp$@.lo $(PLUGIN_CFLAGS) $(LIBTOOL) --mode=link $(CC) $(CFLAGS) -o libtmp$@.la -rpath $(plugindir) tmp$@.lo $(LIBS) $(LDFLAGS) -avoid-version $(PLUGIN_LIBS) @rm -f tmp$@.lo tmp$@.o libtmp$@.la - @cp .libs/libtmp$@.so $@ + @cp .libs/libtmp$@.so* $@ @rm -f .libs/libtmp$@.* if PLUGINS |
From: Eric W. <war...@us...> - 2001-10-10 20:13:37
|
Update of /cvsroot/gaim/gaim In directory usw-pr-cvs1:/tmp/cvs-serv3559 Modified Files: ChangeLog Log Message: thanks Nathan Walp and Ben Miller Index: ChangeLog =================================================================== RCS file: /cvsroot/gaim/gaim/ChangeLog,v retrieving revision 1.311 retrieving revision 1.312 diff -u -d -r1.311 -r1.312 --- ChangeLog 2001/10/09 23:44:24 1.311 +++ ChangeLog 2001/10/10 19:58:11 1.312 @@ -2,6 +2,8 @@ version 0.46: * New applet icons (courtesy David Raeman) + * ICQ works on big-endian platforms, e.g. sparc and ppc + (thanks to Nathan Walp and Ben Miller) version 0.45 (10/04/2001): * New plugin event: event_chat_send_invite |
From: Eric W. <war...@us...> - 2001-10-10 20:11:44
|
Update of /cvsroot/gaim/gaim/src/protocols/icq In directory usw-pr-cvs1:/tmp/cvs-serv3559/src/protocols/icq Modified Files: icqpacket.c udp.c Log Message: thanks Nathan Walp and Ben Miller Index: icqpacket.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/icqpacket.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- icqpacket.c 2001/07/31 01:00:38 1.1 +++ icqpacket.c 2001/10/10 19:58:11 1.2 @@ -59,7 +59,8 @@ { DWORD val=i; - *(unsigned long*)((p->data)+(p->cursor))=htoicql(val); + val = htoicql(val); + memcpy((p->data)+(p->cursor),&val,sizeof(DWORD)); icq_PacketAdvance(p, sizeof(DWORD)); } @@ -67,7 +68,7 @@ { DWORD val=i; - *(DWORD *)((p->data)+(p->cursor)) = val; + memcpy((p->data)+(p->cursor),&val,sizeof(DWORD)); icq_PacketAdvance(p, sizeof(DWORD)); } @@ -75,7 +76,8 @@ { DWORD val; - val = icqtohl(*(DWORD *)((p->data)+(p->cursor))); + memcpy(&val,(p->data)+(p->cursor),sizeof(DWORD)); + val = icqtohl(val); icq_PacketAdvance(p, sizeof(DWORD)); return val; @@ -85,7 +87,7 @@ { DWORD val; - val = *(DWORD*)((p->data)+(p->cursor)); + memcpy(&val,(p->data)+(p->cursor),sizeof(DWORD)); icq_PacketAdvance(p, sizeof(DWORD)); return val; @@ -95,7 +97,8 @@ { WORD val=i; - *(WORD *)((p->data)+(p->cursor)) = htoicqs(val); + val = htoicqs(val); + memcpy((p->data)+(p->cursor),&val,sizeof(WORD)); icq_PacketAdvance(p, sizeof(WORD)); } @@ -103,7 +106,7 @@ { WORD val=i; - *(WORD *)((p->data)+(p->cursor)) = val; + memcpy((p->data)+(p->cursor),&val,sizeof(WORD)); icq_PacketAdvance(p, sizeof(WORD)); } @@ -111,7 +114,8 @@ { WORD val; - val = icqtohs(*(WORD *)((p->data)+(p->cursor))); + memcpy(&val,(p->data)+(p->cursor),sizeof(WORD)); + val = icqtohs(val); icq_PacketAdvance(p, sizeof(WORD)); return val; @@ -121,7 +125,7 @@ { WORD val; - val = *(WORD*)((p->data)+(p->cursor)); + memcpy(&val,(p->data)+(p->cursor),sizeof(WORD)); icq_PacketAdvance(p, sizeof(WORD)); return val; Index: udp.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/icq/udp.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- udp.c 2001/07/31 01:00:38 1.1 +++ udp.c 2001/10/10 19:58:11 1.2 @@ -108,23 +108,29 @@ DWORD checkcode = icq_UDPCalculateCheckCode(p); DWORD code1, code2, code3; DWORD pos; + DWORD tmp; memcpy(buffer, p->data, p->length); - *(DWORD *)(buffer+0x14)=htoicql(checkcode); + tmp = htoicql(checkcode); + memcpy((buffer+0x14),&tmp,sizeof(DWORD)); code1 = p->length * 0x68656c6cL; code2 = code1 + checkcode; pos = 0x0A; for(; pos < p->length; pos+=4) { - DWORD data = icqtohl(*(DWORD *)((p->data)+pos)); + DWORD data; + memcpy(&data, (p->data)+pos, sizeof(DWORD)); + data = icqtohl(data); code3 = code2 + icq_UDPTable[pos & 0xFF]; data ^= code3; - *(DWORD*)(buffer+pos)=htoicql(data); + data = htoicql(data); + memcpy((buffer+pos),&data,sizeof(DWORD)); } checkcode = icq_UDPScramble(checkcode); - *(DWORD *)(buffer+0x14)=htoicql(checkcode); + tmp = htoicql(checkcode); + memcpy((buffer+0x14),&tmp,sizeof(DWORD)); } /********************************************************* |