vcl/unx/gtk3/gtksalmenu.cxx |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

New commits:
commit d3963918544888608da149c3f0206d7a96828361
Author:     Julien Nabet <serval2...@yahoo.fr>
AuthorDate: Sat Jan 13 18:03:53 2024 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Sat Jan 13 22:29:03 2024 +0100

    Add missing g_object_unref (vcl/gtksalmenu)
    
    Change-Id: I07db3d7a03da94b53ad49188c229c134dc2f663c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162017
    Reviewed-by: Julien Nabet <serval2...@yahoo.fr>
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/vcl/unx/gtk3/gtksalmenu.cxx b/vcl/unx/gtk3/gtksalmenu.cxx
index 804c1d017ac9..ddfa5ef36b48 100644
--- a/vcl/unx/gtk3/gtksalmenu.cxx
+++ b/vcl/unx/gtk3/gtksalmenu.cxx
@@ -125,6 +125,7 @@ static void RemoveDisabledItemsFromNativeMenu(GLOMenu* 
pMenu, GList** pOldComman
                             g_free(pSubCommand);
                         }
                     }
+                    g_object_unref(pSubMenuModel);
                 }
             }
 
@@ -1362,7 +1363,8 @@ bool GtkSalMenu::NativeSetItemCommand( unsigned nSection,
 
     if ( aCurrentCommand == nullptr || g_strcmp0( aCurrentCommand, aCommand ) 
!= 0 )
     {
-        bool bOldHasSubmenu = 
g_lo_menu_get_submenu_from_item_in_section(pMenu, nSection, nItemPos) != 
nullptr;
+        GLOMenu* pSubMenuModel = 
g_lo_menu_get_submenu_from_item_in_section(pMenu, nSection, nItemPos);
+        bool bOldHasSubmenu = pSubMenuModel != nullptr;
         bSubMenuAddedOrRemoved = bOldHasSubmenu != bIsSubmenu;
         if (bSubMenuAddedOrRemoved)
         {
@@ -1386,6 +1388,8 @@ bool GtkSalMenu::NativeSetItemCommand( unsigned nSection,
             g_lo_menu_set_action_and_target_value_to_item_in_section( pMenu, 
nSection, nItemPos, aItemCommand, pTarget );
             pTarget = nullptr;
         }
+        if (bOldHasSubmenu)
+            g_object_unref(pSubMenuModel);
 
         g_free( aItemCommand );
     }

Reply via email to