Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/backend
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpg@redhat.com>2005-06-06 09:53:45 (GMT)
committer Marco Pesenti Gritti <marco@src.gnome.org>2005-06-06 09:53:45 (GMT)
commit2145e8deca567c91cf08132160f0ab3794fa382e (patch)
tree55f441844ddd7c462f49b5a2d32d43455b03fd3e /backend
parent9f3860c715d418bc4af69e0409714a6d58677839 (diff)
Use a const to return title so that we dont double free it. Small cleanup
2005-06-06 Marco Pesenti Gritti <mpg@redhat.com> * backend/ev-page-cache.c: (_ev_page_cache_new): * backend/ev-page-cache.h: Use a const to return title so that we dont double free it. Small cleanup and fix a leak. * shell/ev-window.c: (update_window_title): strdup value from get_title.
Diffstat (limited to 'backend')
-rw-r--r--backend/ev-page-cache.c12
-rw-r--r--backend/ev-page-cache.h2
2 files changed, 5 insertions, 9 deletions
diff --git a/backend/ev-page-cache.c b/backend/ev-page-cache.c
index 17cd641..573e57e 100644
--- a/backend/ev-page-cache.c
+++ b/backend/ev-page-cache.c
@@ -103,7 +103,6 @@ ev_page_cache_finalize (GObject *object)
EvPageCache *
_ev_page_cache_new (EvDocument *document)
{
- EvDocumentInfo *doc_info;
EvPageCache *page_cache;
EvPageCacheInfo *info;
gint i;
@@ -122,14 +121,13 @@ _ev_page_cache_new (EvDocument *document)
page_cache->page_labels = g_new0 (char *, page_cache->n_pages);
page_cache->max_width = 0;
page_cache->max_height = 0;
+ page_cache->page_info = ev_document_get_info (document);
- doc_info = ev_document_get_info (document);
- if (doc_info->fields_mask & EV_DOCUMENT_INFO_TITLE) {
- page_cache->title = g_strdup (doc_info->title);
+ if (page_cache->page_info->fields_mask & EV_DOCUMENT_INFO_TITLE) {
+ page_cache->title = g_strdup (page_cache->page_info->title);
} else {
page_cache->title = NULL;
}
- g_free (doc_info);
for (i = 0; i < page_cache->n_pages; i++) {
double page_width = 0;
@@ -222,8 +220,6 @@ _ev_page_cache_new (EvDocument *document)
}
}
- page_cache->page_info = ev_document_get_info (document);
-
/* make some sanity check assertions */
if (! page_cache->uniform)
g_assert (page_cache->size_cache != NULL);
@@ -317,7 +313,7 @@ ev_page_cache_set_link (EvPageCache *page_cache,
ev_page_cache_set_current_page (page_cache, ev_link_get_page (link));
}
-char *
+const char *
ev_page_cache_get_title (EvPageCache *page_cache)
{
g_return_val_if_fail (EV_IS_PAGE_CACHE (page_cache), NULL);
diff --git a/backend/ev-page-cache.h b/backend/ev-page-cache.h
index 053fd36..9de48b8 100644
--- a/backend/ev-page-cache.h
+++ b/backend/ev-page-cache.h
@@ -33,7 +33,7 @@ GType ev_page_cache_get_type (void) G_GNUC_CONST;
/* Used by ev-document.c only */
EvPageCache *_ev_page_cache_new (EvDocument *document);
gint ev_page_cache_get_n_pages (EvPageCache *page_cache);
-char *ev_page_cache_get_title (EvPageCache *page_cache);
+const char *ev_page_cache_get_title (EvPageCache *page_cache);
void ev_page_cache_get_size (EvPageCache *page_cache,
gint page,
gfloat scale,