Mercurial > pidgin
changeset 138:e8ea1e2fdf0c
[gaim-migrate @ 148]
Bugfixes and memleaks mostly.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Wed, 19 Apr 2000 12:36:18 +0000 |
parents | fe81c8b4951d |
children | c009c4f4ad02 |
files | plugins/iconaway.c plugins/spellchk.c src/aim.c src/plugins.c |
diffstat | 4 files changed, 22 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/iconaway.c Wed Apr 19 08:49:49 2000 +0000 +++ b/plugins/iconaway.c Wed Apr 19 12:36:18 2000 +0000 @@ -16,8 +16,7 @@ GDK_WINDOW_XWINDOW(imaway->window), ((_XPrivDisplay)GDK_DISPLAY())->default_screen); #ifdef USE_APPLET - gnome_buddy_hide(); - set_applet_draw_closed(); + applet_destroy_buddy(); #else XIconifyWindow(GDK_DISPLAY(), GDK_WINDOW_XWINDOW(blist->window),
--- a/plugins/spellchk.c Wed Apr 19 08:49:49 2000 +0000 +++ b/plugins/spellchk.c Wed Apr 19 12:36:18 2000 +0000 @@ -48,7 +48,7 @@ struct replace_words *r; r = (struct replace_words *)(w->data); tmp = have_word(*message, word); - if (!strcmp(have_word(*message, word), r->bad)) { + if (!strcmp(tmp, r->bad)) { substitute(message, word, strlen(r->bad), r->good); l += num_words(r->good) - num_words(r->bad);
--- a/src/aim.c Wed Apr 19 08:49:49 2000 +0000 +++ b/src/aim.c Wed Apr 19 12:36:18 2000 +0000 @@ -404,11 +404,9 @@ gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(remember), (general_options & OPT_GEN_REMEMBER_PASS)); if (current_user) { - GList *all = combo_user_names(); - GList *srch = g_list_find(all, (void *)current_user->username); + GList *all = aim_users; + GList *srch = g_list_find(all, (void *)current_user); int length = g_list_length(all) - g_list_length(srch); - g_list_free(srch); - g_list_free(all); gtk_combo_set_value_in_list(GTK_COMBO(name), length, 0); if ((general_options & OPT_GEN_REMEMBER_PASS)) {
--- a/src/plugins.c Wed Apr 19 08:49:49 2000 +0000 +++ b/src/plugins.c Wed Apr 19 12:36:18 2000 +0000 @@ -87,10 +87,16 @@ { char *buf = g_malloc(BUF_LEN); - if (!plugin_dialog) { - plugin_dialog = gtk_file_selection_new("Gaim - Plugin List"); + if (plugin_dialog) { + g_free(buf); + gtk_widget_show(plugin_dialog); + gdk_window_raise(plugin_dialog->window); + return; + } - gtk_file_selection_hide_fileop_buttons( + plugin_dialog = gtk_file_selection_new("Gaim - Plugin List"); + + gtk_file_selection_hide_fileop_buttons( GTK_FILE_SELECTION(plugin_dialog)); if(getenv("PLUGIN_DIR") == NULL) { @@ -109,8 +115,6 @@ gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(plugin_dialog)->cancel_button), "clicked", GTK_SIGNAL_FUNC(destroy_plugins), NULL); - } - g_free(buf); gtk_widget_show(plugin_dialog); gdk_window_raise(plugin_dialog->window); @@ -335,14 +339,18 @@ while (c) { g = (struct gaim_callback *)c->data; if (g->handle == p->handle) { - callbacks = g_list_remove(callbacks, c); + callbacks = g_list_remove(callbacks, c->data); g_free(g); + c = callbacks; + if (c == NULL) break; } c = c->next; } - dlclose(p->handle); + /* don't ask me why this works */ + if (callbacks != NULL) dlclose(p->handle); plugins = g_list_remove(plugins, p); + g_free(p->filename); g_free(p); gtk_widget_set_sensitive(config, 0); update_show_plugins(); @@ -394,8 +402,10 @@ while (c) { g = (struct gaim_callback *)c->data; if (handle == g->handle && func == g->function) { - callbacks = g_list_remove(callbacks, g); + callbacks = g_list_remove(callbacks, c->data); g_free(g); + c = callbacks; + if (c == NULL) break; } c = c->next; }