SHA256
1
0
forked from pool/qgis
qgis/exiv2-0.28.patch

53 lines
1.8 KiB
Diff

diff --git a/src/core/raster/qgsexiftools.cpp b/src/core/raster/qgsexiftools.cpp
index 7fa2709845..f883d7960c 100644
--- a/src/core/raster/qgsexiftools.cpp
+++ b/src/core/raster/qgsexiftools.cpp
@@ -66,7 +66,11 @@ QVariant decodeXmpData( const QString &key, Exiv2::XmpData::const_iterator &it )
case Exiv2::signedLong:
case Exiv2::unsignedLongLong:
case Exiv2::signedLongLong:
+#if EXIV2_TEST_VERSION (0, 28, 0)
+ val = QVariant::fromValue( it->toUint32() );
+#else
val = QVariant::fromValue( it->toLong() );
+#endif
break;
case Exiv2::tiffDouble:
@@ -80,7 +84,11 @@ QVariant decodeXmpData( const QString &key, Exiv2::XmpData::const_iterator &it )
case Exiv2::signedByte:
case Exiv2::tiffIfd:
case Exiv2::tiffIfd8:
+#if EXIV2_TEST_VERSION (0, 28, 0)
+ val = QVariant::fromValue( static_cast< int >( it->toUint32() ) );
+#else
val = QVariant::fromValue( static_cast< int >( it->toLong() ) );
+#endif
break;
case Exiv2::date:
@@ -182,7 +190,11 @@ QVariant decodeExifData( const QString &key, Exiv2::ExifData::const_iterator &it
case Exiv2::signedLong:
case Exiv2::unsignedLongLong:
case Exiv2::signedLongLong:
+#if EXIV2_TEST_VERSION (0, 28, 0)
+ val = QVariant::fromValue( it->toUint32() );
+#else
val = QVariant::fromValue( it->toLong() );
+#endif
break;
case Exiv2::tiffDouble:
@@ -196,7 +208,11 @@ QVariant decodeExifData( const QString &key, Exiv2::ExifData::const_iterator &it
case Exiv2::signedByte:
case Exiv2::tiffIfd:
case Exiv2::tiffIfd8:
+#if EXIV2_TEST_VERSION (0, 28, 0)
+ val = QVariant::fromValue( static_cast< int >( it->toUint32() ) );
+#else
val = QVariant::fromValue( static_cast< int >( it->toLong() ) );
+#endif
break;
case Exiv2::date: