gnucash stable: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Mon Mar 23 13:30:03 EDT 2026


Updated	 via  https://github.com/Gnucash/gnucash/commit/52e8c27c (commit)
	 via  https://github.com/Gnucash/gnucash/commit/515788ef (commit)
	from  https://github.com/Gnucash/gnucash/commit/1b3216ea (commit)



commit 52e8c27c3167367144de2c8aca581c4a70f29094
Merge: 1b3216ead4 515788eff6
Author: John Ralls <jralls at ceridwen.us>
Date:   Mon Mar 23 10:26:51 2026 -0700

    Merge Sherlock's 'fix-plugin-page-register-leak' into stable.


commit 515788eff67c1e89825ac83ac004e5a97e452abd
Author: Sherlock <119709043+agwekixj at users.noreply.github.com>
Date:   Fri Mar 20 14:42:43 2026 -0700

    fix plugin page register gui leak
    
    Added g_object_ref() of gsr to gnc_plugin_page_register_create_widget() and g_object_unref() of priv->widget to gnc_plugin_page_register_destroy_widget().  Also, removed the gtk_widget_destroy() of priv->gsr as priv->gsr will be handled by the g_object_unref () of priv->widget.

diff --git a/gnucash/gnome/gnc-plugin-page-register.cpp b/gnucash/gnome/gnc-plugin-page-register.cpp
index 58660e6b0c..494173e77a 100644
--- a/gnucash/gnome/gnc-plugin-page-register.cpp
+++ b/gnucash/gnome/gnc-plugin-page-register.cpp
@@ -1254,6 +1254,7 @@ gnc_plugin_page_register_create_widget (GncPluginPage* plugin_page)
                              gnc_window_get_gtk_window (gnc_window),
                              numRows, priv->read_only);
     priv->gsr = (GNCSplitReg *)gsr;
+    g_object_ref(gsr);
 
     gtk_widget_show (gsr);
     gtk_box_pack_start (GTK_BOX (priv->widget), gsr, TRUE, TRUE, 0);
@@ -1506,11 +1507,12 @@ 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));
+    g_object_unref(priv->widget);
+    priv->widget = NULL;
 
     gnc_ledger_display_close (priv->ledger);
     priv->ledger = NULL;
+
     LEAVE (" ");
 }
 



Summary of changes:
 gnucash/gnome/gnc-plugin-page-register.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)



More information about the gnucash-changes mailing list