[gnumeric] Function Selector: plug leaks.



commit 541b2e6ba120b201e5ade7e860d9972ab597c209
Author: Morten Welinder <terra gnome org>
Date:   Sun Nov 26 19:40:01 2017 -0500

    Function Selector: plug leaks.

 NEWS                                 |    1 +
 src/dialogs/ChangeLog                |    6 ++++++
 src/dialogs/dialog-function-select.c |   21 +++++++++++++--------
 3 files changed, 20 insertions(+), 8 deletions(-)
---
diff --git a/NEWS b/NEWS
index cb54e67..1c50d82 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,7 @@ Morten:
        * Improve PERMUTATIONA for unusual arguments.  [#790742]
        * Extend range of NT_PI.
        * Improve xlsx export of cell comments.  [#790756]
+       * Plug leaks.
 
 --------------------------------------------------------------------------
 Gnumeric 1.12.36
diff --git a/src/dialogs/ChangeLog b/src/dialogs/ChangeLog
index 7ed11af..4bfbb84 100644
--- a/src/dialogs/ChangeLog
+++ b/src/dialogs/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-26  Morten Welinder  <terra gnome org>
+
+       * dialog-function-select.c (cb_dialog_function_select_search_all):
+       Plug leak.
+       (cb_dialog_function_select_load_cb): Plug leak.
+
 2017-11-18  Morten Welinder <terra gnome org>
 
        * Release 1.12.36
diff --git a/src/dialogs/dialog-function-select.c b/src/dialogs/dialog-function-select.c
index 570abbf..dc654fe 100644
--- a/src/dialogs/dialog-function-select.c
+++ b/src/dialogs/dialog-function-select.c
@@ -171,11 +171,11 @@ cb_dialog_function_select_search_all (GtkTreeModel *model,
 
                g_free (text_n);
                g_free (text_cf);
+       }
 
+       g_free (name);
+       g_free (desc);
 
-               g_free (name);
-               g_free (desc);
-       }
        if (visible != was_visible)
                gtk_list_store_set (GTK_LIST_STORE (model), iter,
                                    FUNCTION_VISIBLE, visible,
@@ -474,6 +474,7 @@ cb_dialog_function_select_load_cb (GtkTreeModel *model,
        dialog_function_select_load_cb_t *specs = data;
        gchar *name;
        gpointer ptr;
+       gboolean res;
 
        gtk_tree_model_get (model, iter,
                            CAT_NAME, &name,
@@ -482,12 +483,16 @@ cb_dialog_function_select_load_cb (GtkTreeModel *model,
 
        if (ptr == NULL || ptr == GINT_TO_POINTER(-1)
            || ptr == GINT_TO_POINTER(-2))
-               return FALSE;
-       if (go_utf8_collate_casefold (specs->name, name) < 0) {
+               res = FALSE;
+       else if (go_utf8_collate_casefold (specs->name, name) < 0) {
                specs->iter = gtk_tree_iter_copy (iter);
-               return TRUE;
-       }
-       return FALSE;
+               res = TRUE;
+       } else
+               res = FALSE;
+
+       g_free (name);
+
+       return res;
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]