[Xfce4-commits] <midori:master> Turn view->memory into a static variable
Christian Dywan
noreply at xfce.org
Sat Nov 13 15:22:01 CET 2010
Updating branch refs/heads/master
to f3831c515784b880d8d4b04c125db585ab53b06d (commit)
from 8e60b836f6c94416127089d82e9d9a3fe648bc67 (commit)
commit f3831c515784b880d8d4b04c125db585ab53b06d
Author: Christian Dywan <christian at twotoasts.de>
Date: Sat Nov 13 15:11:02 2010 +0100
Turn view->memory into a static variable
midori/midori-view.c | 24 +++++++++++++++++++++---
1 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/midori/midori-view.c b/midori/midori-view.c
index c34c684..55ef7c6 100644
--- a/midori/midori-view.c
+++ b/midori/midori-view.c
@@ -3051,6 +3051,16 @@ katze_net_object_maybe_unref (gpointer object)
g_object_unref (object);
}
+static GHashTable* midori_view_get_memory (void)
+{
+ static GHashTable* memory = NULL;
+ if (!memory)
+ memory = g_hash_table_new_full (g_str_hash, g_str_equal,
+ g_free, katze_net_object_maybe_unref);
+ return g_hash_table_ref (memory);
+
+}
+
static void
midori_view_init (MidoriView* view)
{
@@ -3060,8 +3070,7 @@ midori_view_init (MidoriView* view)
view->mime_type = g_strdup ("");
view->icon = NULL;
view->icon_uri = NULL;
- view->memory = g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, katze_net_object_maybe_unref);
+ view->memory = midori_view_get_memory ();
view->progress = 0.0;
view->load_status = MIDORI_LOAD_FINISHED;
view->minimized = FALSE;
@@ -3110,13 +3119,22 @@ midori_view_finalize (GObject* object)
midori_view_item_meta_data_changed, view);
if (view->thumb_view)
+ {
gtk_widget_destroy (view->thumb_view);
+ view->thumb_view = NULL;
+ }
katze_assign (view->uri, NULL);
katze_assign (view->title, NULL);
katze_object_assign (view->icon, NULL);
katze_assign (view->icon_uri, NULL);
- g_hash_table_destroy (view->memory);
+
+ if (view->memory)
+ {
+ g_hash_table_unref (view->memory);
+ view->memory = NULL;
+ }
+
katze_assign (view->statusbar_text, NULL);
katze_assign (view->link_uri, NULL);
katze_assign (view->selected_text, NULL);
More information about the Xfce4-commits
mailing list