Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--shell/ev-page-cache.c8
2 files changed, 13 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 367d9f7..3ed2f7b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-02-11 Carlos Garcia Campos <carlosgc@gnome.org>
+
+ * shell/ev-page-cache.c: (ev_page_cache_finalize):
+
+ Fix invalid free in ev-page-cache. Fixes bug #404745.
+
2007-02-11 Nickolay V. Shmyrev <nshmyrev@yandex.ru>
* test/Makefile.am:
diff --git a/shell/ev-page-cache.c b/shell/ev-page-cache.c
index 0116452..ebf0de7 100644
--- a/shell/ev-page-cache.c
+++ b/shell/ev-page-cache.c
@@ -129,7 +129,13 @@ ev_page_cache_finalize (GObject *object)
}
if (page_cache->page_labels) {
- g_strfreev (page_cache->page_labels);
+ gint i;
+
+ for (i = 0; i < page_cache->n_pages; i++) {
+ if (page_cache->page_labels[i])
+ g_free (page_cache->page_labels[i]);
+ }
+ g_free (page_cache->page_labels);
page_cache->page_labels = NULL;
}