From 83806003cd1644ef3321ee9fe97e366fa6ebc733 Mon Sep 17 00:00:00 2001 From: Dan Fandrich Date: Mon, 12 Jan 2009 17:48:39 -0800 Subject: [PATCH] Log when a subsidiary IFD (EXIF, GPS, Interoperability, thumbnail) is found --- libexif/exif-data.c | 8 ++++++++ libexif/exif-data.h | 2 ++ 2 files changed, 10 insertions(+) diff --git a/libexif/exif-data.c b/libexif/exif-data.c index 11d0b60..1185c61 100644 --- a/libexif/exif-data.c +++ b/libexif/exif-data.c @@ -171,6 +171,9 @@ exif_data_load_data_entry (ExifData *data, ExifEntry *entry, entry->format = exif_get_short (d + offset + 2, data->priv->order); entry->components = exif_get_long (d + offset + 4, data->priv->order); + /* FIXME: should use exif_tag_get_name_in_ifd here but entry->parent + * has not been set yet + */ exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", "Loading entry 0x%x ('%s')...", entry->tag, exif_tag_get_name (entry->tag)); @@ -398,6 +401,11 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd, case EXIF_TAG_JPEG_INTERCHANGE_FORMAT: o = exif_get_long (d + offset + 12 * i + 8, data->priv->order); + /* FIXME: IFD_POINTER tags aren't marked as being in a + * specific IFD, so exif_tag_get_name_in_ifd won't work + */ + exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", + "IFD entry 0x%x at %u.", tag, o); switch (tag) { case EXIF_TAG_EXIF_IFD_POINTER: CHECK_REC (EXIF_IFD_EXIF); diff --git a/libexif/exif-data.h b/libexif/exif-data.h index cb047ff..50830f0 100644 --- a/libexif/exif-data.h +++ b/libexif/exif-data.h @@ -127,6 +127,8 @@ void exif_data_set_byte_order (ExifData *data, ExifByteOrder order); /*! Return the MakerNote data out of the EXIF data. Only certain * MakerNote formats that are recognized by libexif are supported. + * The pointer references a member of the #ExifData structure and must NOT be + * freed by the caller. * * \param[in] d EXIF data * \return MakerNote data, or NULL if not found or not supported -- 2.7.4