From 5ba374ee588ddccab6554765bb580da683faccc0 Mon Sep 17 00:00:00 2001 From: Sven Neumann Date: Thu, 17 May 2007 19:51:25 +0000 Subject: [PATCH] split code to get the page name into a utility function. 2007-05-17 Sven Neumann * plug-ins/common/tiff-load.c: split code to get the page name into a utility function. svn path=/trunk/; revision=22527 --- ChangeLog | 5 +++++ plug-ins/common/tiff-load.c | 39 ++++++++++++++++++++++--------------- 2 files changed, 28 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index b34571de3c..41df5a153a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-05-17 Sven Neumann + + * plug-ins/common/tiff-load.c: split code to get the page name + into a utility function. + 2007-05-17 Sven Neumann * app/widgets/gimpdockbook.c (gimp_dockbook_init): unset show-border. diff --git a/plug-ins/common/tiff-load.c b/plug-ins/common/tiff-load.c index fe2f9ad4aa..85bd5fd764 100644 --- a/plug-ins/common/tiff-load.c +++ b/plug-ins/common/tiff-load.c @@ -381,6 +381,22 @@ tiff_error (const gchar *module, g_logv (G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, fmt, ap); } +/* returns a pointer into the TIFF */ +static const gchar * +tiff_get_page_name (TIFF *tif) +{ + static gchar *name; + + if (TIFFGetField (tif, TIFFTAG_PAGENAME, &name) && + g_utf8_validate (name, -1, NULL)) + { + return name; + } + + return NULL; +} + + static gboolean load_dialog (TIFF *tif, TiffSelectedPages *pages) @@ -423,18 +439,11 @@ load_dialog (TIFF *tif, for (i = 0; i < pages->n_pages; i++) { - gchar *name; - - if (! TIFFGetField (tif, TIFFTAG_PAGENAME, &name) || - ! g_utf8_validate (name, -1, NULL)) - { - name = NULL; - } + const gchar *name = tiff_get_page_name (tif); if (name) - gimp_page_selector_set_page_label (GIMP_PAGE_SELECTOR (selector), i, name); - - g_free (name); + gimp_page_selector_set_page_label (GIMP_PAGE_SELECTOR (selector), + i, name); TIFFReadDirectory (tif); } @@ -507,7 +516,7 @@ load_image (const gchar *filename, GimpParasite *parasite; guint16 tmp; - gchar *name; + const gchar *name; GList *images_list = NULL, *images_list_temp; gint li; @@ -883,11 +892,7 @@ load_image (const gchar *filename, channel = g_new0 (channel_data, extra + 1); /* try and use layer name from tiff file */ - if (! TIFFGetField (tif, TIFFTAG_PAGENAME, &name) || - ! g_utf8_validate (name, -1, NULL)) - { - name = NULL; - } + name = tiff_get_page_name (tif); if (name) { @@ -897,6 +902,8 @@ load_image (const gchar *filename, } else { + gchar *name; + if (ilayer == 0) name = g_strdup (_("Background")); else