Remove commented out code.
[geeqie.git] / src / exiv2.cc
index 093bbf4..b0f6560 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Geeqie
- * Copyright (C) 2008 - 2009 The Geeqie Team
+ * Copyright (C) 2008 - 2012 The Geeqie Team
  *
  * Author: Vladimir Nadvornik
  *
@@ -303,7 +303,14 @@ public:
                exifData_ = imageData_->exifData();
                iptcData_ = imageData_->iptcData();
 #if EXIV2_TEST_VERSION(0,17,0)
-               syncExifWithXmp(exifData_, xmpData_);
+               try
+                       {
+                       syncExifWithXmp(exifData_, xmpData_);
+                       }
+               catch (...)
+                       {
+                       DEBUG_1("Exiv2: Catching bug\n");
+                       }
 #endif
                if (modified_xmp)
                        {
@@ -790,7 +797,7 @@ gchar *exif_item_get_string(ExifItem *item, int idx)
 gint exif_item_get_integer(ExifItem *item, gint *value)
 {
        try {
-               if (!item) return 0;
+               if (!item || exif_item_get_elements(item) == 0) return 0;
                *value = ((Exiv2::Metadatum *)item)->toLong();
                return 1;
        }
@@ -982,12 +989,12 @@ static GList *exif_add_value_to_glist(GList *list, Exiv2::Metadatum &item, Metad
 #if EXIV2_TEST_VERSION(0,16,0)
                        Exiv2::Xmpdatum *xmpdatum;
 #endif
-                       if ((exifdatum = dynamic_cast<Exiv2::Exifdatum *>(metadatum)))
+                       if ((exifdatum = dynamic_cast<Exiv2::Exifdatum *>(&item)))
                                stream << *exifdatum;
-                       else if ((iptcdatum = dynamic_cast<Exiv2::Iptcdatum *>(metadatum)))
+                       else if ((iptcdatum = dynamic_cast<Exiv2::Iptcdatum *>(&item)))
                                stream << *iptcdatum;
 #if EXIV2_TEST_VERSION(0,16,0)
-                       else if ((xmpdatum = dynamic_cast<Exiv2::Xmpdatum *>(metadatum)))
+                       else if ((xmpdatum = dynamic_cast<Exiv2::Xmpdatum *>(&item)))
                                stream << *xmpdatum;
 #endif
                        str = stream.str();
@@ -1002,11 +1009,11 @@ static GList *exif_add_value_to_glist(GList *list, Exiv2::Metadatum &item, Metad
                else
                        {
                        str = item.toString();
-                       if (str.length() > 5 && str.substr(0, 5) == "lang=")
-                               {
-                               std::string::size_type pos = str.find_first_of(' ');
-                               if (pos != std::string::npos) str = str.substr(pos+1);
-                               }
+                       }
+               if (str.length() > 5 && str.substr(0, 5) == "lang=")
+                       {
+                       std::string::size_type pos = str.find_first_of(' ');
+                       if (pos != std::string::npos) str = str.substr(pos+1);
                        }
                list = g_list_append(list, utf8_validate_or_convert(str.c_str())); 
 #if EXIV2_TEST_VERSION(0,16,0)