Mercurial > pidgin
changeset 99:f810fc7d423f
[gaim-migrate @ 109]
Autorecon reconnects you on signoff (kick). Made other small changes.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Sun, 09 Apr 2000 20:29:25 +0000 |
parents | c2d22261e281 |
children | da0883dfa7db |
files | plugins/Makefile plugins/autorecon.c plugins/gaiminc.c |
diffstat | 3 files changed, 37 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/Makefile Sun Apr 09 20:16:40 2000 +0000 +++ b/plugins/Makefile Sun Apr 09 20:29:25 2000 +0000 @@ -2,7 +2,7 @@ CFLAGS = -Wall `gnome-config --cflags gtk` -I../src LDFLAGS = -ggdb `gnome-config --libs gtk` -shared -all: simple.so gaiminc.so file_control.so +all: simple.so gaiminc.so autorecon.so .SUFFIXES: .c .so
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugins/autorecon.c Sun Apr 09 20:29:25 2000 +0000 @@ -0,0 +1,31 @@ +#define GAIM_PLUGINS +#include "gaim.h" +#include <gtk/gtk.h> + +static int recon; + +char *name() { + return "Auto Reconnect"; +} + +char *description() { + return "When AOL kicks you off, this auto-reconnects you."; +} + +extern void dologin(GtkWidget *, GtkWidget *); + +void do_signon() { + dologin(NULL, NULL); + if (query_state() != STATE_OFFLINE) { + gtk_timeout_remove(recon); + return; + } +} + +void reconnect(void *m) { + recon = gtk_timeout_add(2000, (GtkFunction)do_signon, NULL); +} + +void gaim_plugin_init(void *handle) { + gaim_signal_connect(handle, event_signoff, reconnect, NULL); +}
--- a/plugins/gaiminc.c Sun Apr 09 20:16:40 2000 +0000 +++ b/plugins/gaiminc.c Sun Apr 09 20:29:25 2000 +0000 @@ -17,6 +17,11 @@ * the text of the message (HTML and all) will be reversed. */ int i, l; char tmp; + + /* this check is necessary in case bad plugins do bad things */ + if (message == NULL || *message == NULL) + return; + l = strlen(*message); if (!strcmp(*who, current_user->username))