diff options
-rw-r--r-- | libempathy-gtk/empathy-contact-list-view.c | 4 | ||||
-rw-r--r-- | libempathy-gtk/empathy-contact-menu.c | 1 | ||||
-rw-r--r-- | libempathy-gtk/empathy-contact-widget.c | 3 | ||||
-rw-r--r-- | libempathy-gtk/empathy-theme-adium.c | 2 | ||||
-rw-r--r-- | src/empathy-debug-window.c | 2 | ||||
-rw-r--r-- | src/empathy-map-view.c | 2 |
6 files changed, 12 insertions, 2 deletions
diff --git a/libempathy-gtk/empathy-contact-list-view.c b/libempathy-gtk/empathy-contact-list-view.c index 958aaf0fd..0ed24bdf8 100644 --- a/libempathy-gtk/empathy-contact-list-view.c +++ b/libempathy-gtk/empathy-contact-list-view.c @@ -683,6 +683,8 @@ contact_list_view_popup_menu_idle_cb (gpointer user_data) gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, data->button, data->time); + g_object_ref_sink (menu); + g_object_unref (menu); } g_slice_free (MenuPopupData, data); @@ -795,6 +797,8 @@ contact_list_view_call_activated_cb ( gtk_widget_show (menu); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, event->button, event->time); + g_object_ref_sink (menu); + g_object_unref (menu); g_object_unref (contact); } diff --git a/libempathy-gtk/empathy-contact-menu.c b/libempathy-gtk/empathy-contact-menu.c index 3fdaf6d4b..3d194fced 100644 --- a/libempathy-gtk/empathy-contact-menu.c +++ b/libempathy-gtk/empathy-contact-menu.c @@ -475,7 +475,6 @@ room_sub_menu_data_new (EmpathyContact *contact, static void room_sub_menu_data_free (RoomSubMenuData *data) { - /* FIXME: seems this is never called... */ g_object_unref (data->contact); g_object_unref (data->chatroom); g_slice_free (RoomSubMenuData, data); diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c index 3e8ed8430..f55e81405 100644 --- a/libempathy-gtk/empathy-contact-widget.c +++ b/libempathy-gtk/empathy-contact-widget.c @@ -826,9 +826,10 @@ popup_avatar_menu (EmpathyContactWidget *information, event_time = gtk_get_current_event_time (); } - gtk_menu_attach_to_widget (GTK_MENU (menu), parent, NULL); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, button, event_time); + g_object_ref_sink (menu); + g_object_unref (menu); } static gboolean diff --git a/libempathy-gtk/empathy-theme-adium.c b/libempathy-gtk/empathy-theme-adium.c index 62734ff93..5c67af857 100644 --- a/libempathy-gtk/empathy-theme-adium.c +++ b/libempathy-gtk/empathy-theme-adium.c @@ -842,6 +842,8 @@ theme_adium_context_menu_for_event (EmpathyThemeAdium *theme, GdkEventButton *ev gtk_widget_show_all (menu); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, event->button, event->time); + g_object_ref_sink (menu); + g_object_unref (menu); } static gboolean diff --git a/src/empathy-debug-window.c b/src/empathy-debug-window.c index e411fcd73..da2c0e079 100644 --- a/src/empathy-debug-window.c +++ b/src/empathy-debug-window.c @@ -889,6 +889,8 @@ debug_window_show_menu (gpointer user_data) gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, data->button, data->time); + g_object_ref_sink (menu); + g_object_unref (menu); g_slice_free (MenuPopupData, user_data); diff --git a/src/empathy-map-view.c b/src/empathy-map-view.c index b7b37549f..fd6106c95 100644 --- a/src/empathy-map-view.c +++ b/src/empathy-map-view.c @@ -175,6 +175,8 @@ marker_clicked_cb (ChamplainMarker *marker, gtk_widget_show (menu); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, event->button, event->time); + g_object_ref_sink (menu); + g_object_unref (menu); return FALSE; } |