[gtk+/wip/attach-params-pass-event: 11/15] 99db2f96 gtkmenu remove unnecessary ref sinking
- From: William Hua <williamhua src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/attach-params-pass-event: 11/15] 99db2f96 gtkmenu remove unnecessary ref sinking
- Date: Thu, 18 Feb 2016 16:08:57 +0000 (UTC)
commit c4b4fc2535698f49897dcb5b968da0be883289f5
Author: William Hua <william hua canonical com>
Date: Wed Feb 17 18:46:29 2016 -0500
99db2f96 gtkmenu remove unnecessary ref sinking
gtk/gtkmenu.c | 27 ++++++++++-----------------
1 files changed, 10 insertions(+), 17 deletions(-)
---
diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c
index 2b3c835..2343173 100644
--- a/gtk/gtkmenu.c
+++ b/gtk/gtkmenu.c
@@ -1564,14 +1564,6 @@ gtk_menu_popup_internal (GtkMenu *menu,
GdkDevice *source_device = NULL;
GdkDisplay *display;
- if (params)
- {
- g_object_ref_sink (params);
-
- if (!GTK_IS_MENU (menu) || (seat && !GDK_IS_SEAT (seat)))
- g_clear_object (¶ms);
- }
-
g_return_if_fail (GTK_IS_MENU (menu));
g_return_if_fail (!seat || GDK_IS_SEAT (seat));
@@ -1681,7 +1673,12 @@ gtk_menu_popup_internal (GtkMenu *menu,
menu_grab_transfer_window_destroy (menu);
g_clear_object (&pointer);
- g_clear_object (¶ms);
+
+ if (params)
+ {
+ g_object_ref_sink (params);
+ g_object_unref (params);
+ }
return;
}
@@ -1736,8 +1733,10 @@ gtk_menu_popup_internal (GtkMenu *menu,
priv->position_func_data_destroy = destroy;
menu_shell->priv->activate_time = activate_time;
- g_set_object (&priv->attach_params, params);
- g_clear_object (¶ms);
+ g_clear_object (&priv->attach_params);
+
+ if (params)
+ priv->attach_params = g_object_ref_sink (params);
/* We need to show the menu here rather in the init function
* because code expects to be able to tell if the menu is onscreen
@@ -1944,12 +1943,6 @@ gtk_menu_popup_with_params (GtkMenu *menu,
gint x;
gint y;
- if (!GTK_IS_MENU (menu) && params)
- {
- g_object_ref_sink (params);
- g_clear_object (¶ms);
- }
-
g_return_if_fail (GTK_IS_MENU (menu));
if (seat)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]