[gexiv2] Fix XMP tag lookup



commit 4edbeff58bfe35aa3fada6f9e1591752a7bbde25
Author: Jens Georg <mail jensge org>
Date:   Sun Jul 17 22:23:36 2016 +0200

    Fix XMP tag lookup
    
    If tag is empty, don't just pick the next non-empty and return it
    
    Signed-off-by: Jens Georg <mail jensge org>
    
    https://bugzilla.gnome.org/show_bug.cgi?id=768906

 gexiv2/gexiv2-metadata-xmp.cpp |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/gexiv2/gexiv2-metadata-xmp.cpp b/gexiv2/gexiv2-metadata-xmp.cpp
index d44b028..e4900f2 100644
--- a/gexiv2/gexiv2-metadata-xmp.cpp
+++ b/gexiv2/gexiv2-metadata-xmp.cpp
@@ -277,8 +277,10 @@ gchar** gexiv2_metadata_get_xmp_tag_multiple (GExiv2Metadata *self, const gchar*
     Exiv2::XmpData& xmp_data = self->priv->image->xmpData();
     
     try {
-        Exiv2::XmpData::iterator it = xmp_data.findKey(Exiv2::XmpKey(tag));
-        while (it != xmp_data.end() && it->count() == 0)
+        Exiv2::XmpKey key = Exiv2::XmpKey(tag);
+        Exiv2::XmpData::iterator it = xmp_data.findKey(key);
+
+        while (it != xmp_data.end() && it->count() == 0 && it->key() != key.key())
             it++;
         
         if (it != xmp_data.end()) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]