# HG changeset patch # User Eric Warmenhoven # Date 960947530 0 # Node ID d6f02d7f78d808725fc59c2932ee8d38e6362d04 # Parent 943248245f329cefadfa549be78b446a78d4d41c [gaim-migrate @ 413] Fixed plugin stuff. committer: Tailor Script diff -r 943248245f32 -r d6f02d7f78d8 src/aim.c --- a/src/aim.c Wed Jun 14 01:24:02 2000 +0000 +++ b/src/aim.c Wed Jun 14 01:52:10 2000 +0000 @@ -112,6 +112,7 @@ dlclose(p->handle); g_free(p->filename); /* why do i bother? */ g_free(p); + c = c->next; } #endif /* GAIM_PLUGINS */ diff -r 943248245f32 -r d6f02d7f78d8 src/buddy.c --- a/src/buddy.c Wed Jun 14 01:24:02 2000 +0000 +++ b/src/buddy.c Wed Jun 14 01:52:10 2000 +0000 @@ -1103,6 +1103,7 @@ dlclose(p->handle); g_free(p->filename); /* why do i bother? */ g_free(p); + c = c->next; } #endif diff -r 943248245f32 -r d6f02d7f78d8 src/plugins.c --- a/src/plugins.c Wed Jun 14 01:24:02 2000 +0000 +++ b/src/plugins.c Wed Jun 14 01:52:10 2000 +0000 @@ -62,6 +62,7 @@ static GtkWidget *plugwindow; static GtkWidget *config; +static guint confighandle = 0; /* --------------- Function Declarations --------------------- */ @@ -423,6 +424,8 @@ void (*gaim_plugin_config)(); char *error; + if (confighandle) + gtk_signal_disconnect(GTK_OBJECT(config), confighandle); text_len = gtk_text_get_length(GTK_TEXT(plugtext)); gtk_text_set_point(GTK_TEXT(plugtext), 0); gtk_text_forward_delete(GTK_TEXT(plugtext), text_len); @@ -432,10 +435,11 @@ gaim_plugin_config = dlsym(p->handle, "gaim_plugin_config"); if ((error = (char *)dlerror()) == NULL) { - gtk_signal_connect(GTK_OBJECT(config), "clicked", + confighandle = gtk_signal_connect(GTK_OBJECT(config), "clicked", GTK_SIGNAL_FUNC(gaim_plugin_config), NULL); gtk_widget_set_sensitive(config, 1); } else { + confighandle = 0; gtk_widget_set_sensitive(config, 0); } }