From 5f2bf6e7fe67481c000fe9671a679feef79a2fcf Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Mon, 20 Jan 2003 00:19:13 +0000 Subject: Port several leaks fixes from galeon. 2003-01-20 Marco Pesenti Gritti * embed/ephy-embed-event.c: (free_g_value), (ephy_embed_event_init), (ephy_embed_event_get_property): * embed/ephy-embed-event.h: * embed/ephy-embed-popup.c: (setup_document_menu), (embed_popup_copy_email_cmd), (embed_popup_copy_link_location_cmd), (save_property_url), (embed_popup_open_link_cmd), (embed_popup_set_image_as_background_cmd), (embed_popup_copy_image_location_cmd), (embed_popup_open_image_cmd): * embed/ephy-embed-utils.c: (build_charset), (ephy_embed_utils_build_charsets_submenu): * embed/mozilla/FilePicker.cpp: * src/bookmarks/ephy-bookmarks.c: (update_favorites_menus): * src/ephy-nautilus-view.c: (gnv_embed_dom_mouse_down_cb), (gnv_popup_cmd_new_window), (gnv_popup_cmd_image_in_new_window): * src/ephy-shell.c: (ephy_shell_get_active_window): * src/ephy-tab.c: (ephy_tab_dom_mouse_down_cb): * src/ephy-window.c: (update_window_visibility), (update_spinner_control): * src/general-prefs.c: (language_dialog_changed_cb): * src/popup-commands.c: (popup_cmd_new_window), (popup_cmd_new_tab), (popup_cmd_image_in_new_tab), (popup_cmd_image_in_new_window), (popup_cmd_add_bookmark): * src/session.c: (session_close), (session_save): * src/session.h: Port several leaks fixes from galeon. --- embed/ephy-embed-event.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'embed/ephy-embed-event.c') diff --git a/embed/ephy-embed-event.c b/embed/ephy-embed-event.c index fdbd53eab..45993dadb 100644 --- a/embed/ephy-embed-event.c +++ b/embed/ephy-embed-event.c @@ -74,12 +74,20 @@ ephy_embed_event_class_init (EphyEmbedEventClass *klass) object_class->finalize = ephy_embed_event_finalize; } +static void +free_g_value (gpointer value) +{ + g_value_unset (value); + g_free (value); +} + static void ephy_embed_event_init (EphyEmbedEvent *event) { event->priv = g_new0 (EphyEmbedEventPrivate, 1); - event->priv->props = g_hash_table_new (g_str_hash, g_str_equal); + event->priv->props = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, free_g_value); } static void @@ -161,7 +169,7 @@ ephy_embed_event_set_property (EphyEmbedEvent *event, void ephy_embed_event_get_property (EphyEmbedEvent *event, const char *name, - GValue **value) + const GValue **value) { *value = g_hash_table_lookup (event->priv->props, name); } -- cgit v1.2.3