gnucash stable: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sun Mar 22 14:31:35 EDT 2026


Updated	 via  https://github.com/Gnucash/gnucash/commit/1b3216ea (commit)
	 via  https://github.com/Gnucash/gnucash/commit/ead146d2 (commit)
	from  https://github.com/Gnucash/gnucash/commit/74b9879c (commit)



commit 1b3216ead4b9856182e6d2dd2ec3b73b9074989a
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Mar 22 11:29:17 2026 -0700

    Revert "Fix tree view gui leak"
    
    The column_menu_icon_box is apparently already freed, see
    https://github.com/Gnucash/gnucash/pull/2191#issuecomment-4106739900 This reverts commit
    8449b791c2ad1a4c28364d8f11f93400a7727dde.

diff --git a/gnucash/gnome-utils/gnc-tree-view.c b/gnucash/gnome-utils/gnc-tree-view.c
index 6f7005d831..95e206c9fe 100644
--- a/gnucash/gnome-utils/gnc-tree-view.c
+++ b/gnucash/gnome-utils/gnc-tree-view.c
@@ -325,7 +325,7 @@ gnc_tree_view_init (GncTreeView *view)
  *  @param obj The new object instance created by the object
  *  system.
  */
-static void
+ static void
 gnc_tree_view_constructed (GObject *obj)
 {
     gnc_gobject_tracking_remember(obj);
@@ -346,17 +346,10 @@ gnc_tree_view_constructed (GObject *obj)
 static void
 gnc_tree_view_finalize (GObject *object)
 {
-    GncTreeView *view;
-    GncTreeViewPrivate *priv;
-
     ENTER("view %p", object);
     g_return_if_fail (object != NULL);
     g_return_if_fail (GNC_IS_TREE_VIEW(object));
 
-    view = GNC_TREE_VIEW(object);
-    priv = GNC_TREE_VIEW_GET_PRIVATE(view);
-    g_object_unref(priv->column_menu_icon_box);
-
     gnc_gobject_tracking_forget (object);
 
     G_OBJECT_CLASS(gnc_tree_view_parent_class)->finalize (object);

commit ead146d2d2bcd33cab1d4d1e93db21b0a00fc0b3
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Mar 22 11:18:08 2026 -0700

    Revert "fix plugin page register gui leak"
    
    Causes a use-after-free crash.
    This reverts commit 8c344b048e3859c8370bbec866c05e6b7a1e9d66.

diff --git a/gnucash/gnome/gnc-plugin-page-register.cpp b/gnucash/gnome/gnc-plugin-page-register.cpp
index 6462bcc564..58660e6b0c 100644
--- a/gnucash/gnome/gnc-plugin-page-register.cpp
+++ b/gnucash/gnome/gnc-plugin-page-register.cpp
@@ -1506,12 +1506,11 @@ gnc_plugin_page_register_destroy_widget (GncPluginPage* plugin_page)
 
     gtk_widget_hide (priv->widget);
 
+    if (GTK_IS_WIDGET(priv->gsr))
+        gtk_widget_destroy(GTK_WIDGET(priv->gsr));
+
     gnc_ledger_display_close (priv->ledger);
     priv->ledger = NULL;
-
-    g_object_unref(priv->widget);
-    priv->widget = NULL;
-
     LEAVE (" ");
 }
 



Summary of changes:
 gnucash/gnome-utils/gnc-tree-view.c        | 9 +--------
 gnucash/gnome/gnc-plugin-page-register.cpp | 7 +++----
 2 files changed, 4 insertions(+), 12 deletions(-)



More information about the gnucash-changes mailing list