Custom Toolbar: fix crash on CANCEL
authorOliver Haertel <o.h.a@gmx.net>
Sat, 17 Aug 2002 10:54:37 +0000 (10:54 +0000)
committerOliver Haertel <o.h.a@gmx.net>
Sat, 17 Aug 2002 10:54:37 +0000 (10:54 +0000)
ChangeLog.claws
configure.in
src/prefs_toolbar.c
src/toolbar.c

index 789afcb..3e070b0 100644 (file)
@@ -1,3 +1,11 @@
+2002-08-17 [oliver]    0.8.1claws72
+
+       * src/prefs_toolbar.c
+               update toolbar on CANCEL
+               bug reported by Martin Kluge
+       * src/toolbar.c
+               toolbar_destroy memleak fixed           
+
 2002-08-17 [alfons]    0.8.1claws71
 
        * src/toolbar.c
index e88948f..17fe67d 100644 (file)
@@ -8,7 +8,7 @@ MINOR_VERSION=8
 MICRO_VERSION=1
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws71
+EXTRA_VERSION=claws72
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index 8611ccf..0a97c42 100644 (file)
@@ -312,6 +312,7 @@ static void prefs_toolbar_ok(void)
 static void prefs_toolbar_cancel(void)
 {
        prefs_toolbar_close();
+       toolbar_update();
 }
 
 static void get_action_name(gchar *entry, gchar **menu)
index 7824b2b..17877ae 100644 (file)
@@ -137,6 +137,10 @@ static void toolbar_forward_popup_closed_cb
                                        (GtkMenuShell   *menu_shell,
                                         gpointer        data);
 
+static void activate_compose_button     (MainToolbar       *toolbar,
+                                        ToolbarStyle      style,
+                                        ComposeButtonType type);
+
 static ToolbarAction t_action[] = 
 {
        { "A_RECEIVE_ALL",   N_("Receive Mail on all Accounts"),    toolbar_inc_all_cb        },
@@ -835,9 +839,10 @@ void toolbar_destroy(MainWindow *mainwin)
        while (mainwin->toolbar->syl_action != NULL) {
                syl_action = (ToolbarSylpheedActions*)mainwin->toolbar->syl_action->data;
 
+               mainwin->toolbar->syl_action = g_slist_remove(mainwin->toolbar->syl_action, syl_action);
                if (syl_action->name)
                        g_free(syl_action->name);
-               mainwin->toolbar->syl_action = g_slist_remove(mainwin->toolbar->syl_action, syl_action);
+               g_free(syl_action);
        }
 
        g_slist_free(mainwin->toolbar->syl_action);