51269129d7
OBS-URL: https://build.opensuse.org/package/show/KDE:Extra/digikam?expand=0&rev=b164f3af23c3189f71416060c24c1ded
64 lines
2.2 KiB
Diff
64 lines
2.2 KiB
Diff
From 516128e999abbd57913b076dec019f899c07da3d Mon Sep 17 00:00:00 2001
|
|
From: Gilles Caulier <caulier.gilles@gmail.com>
|
|
Date: Sun, 7 Oct 2018 18:39:10 +0200
|
|
Subject: there is a mess in exiv2 headers 0.27.0, between version.hpp and
|
|
exv_con.h We cannot use the macro defined in version.hpp to include this
|
|
file...
|
|
|
|
---
|
|
core/libs/dmetadata/metaengine_exif.cpp | 4 ++++
|
|
core/libs/dmetadata/metaengine_p.h | 18 ++++++------------
|
|
2 files changed, 10 insertions(+), 12 deletions(-)
|
|
|
|
diff --git a/core/libs/dmetadata/metaengine_exif.cpp b/core/libs/dmetadata/metaengine_exif.cpp
|
|
index 079fa96..73af582 100644
|
|
--- a/core/libs/dmetadata/metaengine_exif.cpp
|
|
+++ b/core/libs/dmetadata/metaengine_exif.cpp
|
|
@@ -995,7 +995,11 @@ bool MetaEngine::setTiffThumbnail(const QImage& thumbImage) const
|
|
|
|
if (pos == d->exifMetadata().end() || pos->count() != 1 || pos->toLong() != 0)
|
|
{
|
|
+#if EXIV2_TEST_VERSION(0,27,0)
|
|
+ throw Exiv2::Error(Exiv2::kerErrorMessage, "Exif.Image.NewSubfileType missing or not set as main image");
|
|
+#else
|
|
throw Exiv2::Error(1, "Exif.Image.NewSubfileType missing or not set as main image");
|
|
+#endif
|
|
}
|
|
|
|
// Remove sub-IFD tags
|
|
diff --git a/core/libs/dmetadata/metaengine_p.h b/core/libs/dmetadata/metaengine_p.h
|
|
index 9e234f2..157b63f 100644
|
|
--- a/core/libs/dmetadata/metaengine_p.h
|
|
+++ b/core/libs/dmetadata/metaengine_p.h
|
|
@@ -72,21 +72,19 @@
|
|
#include <exiv2/exif.hpp>
|
|
#include <exiv2/xmpsidecar.hpp>
|
|
|
|
+#if (((EXIV2_MAJOR_VERSION) << 16) | ((EXIV2_MINOR_VERSION) << 8) | (EXIV2_PATCH_VERSION)) >= (((0) << 16) | ((27) << 8) | (0))
|
|
+# include <exiv2/version.hpp>
|
|
+#endif
|
|
+
|
|
// Check if Exiv2 support XMP
|
|
|
|
#ifdef EXV_HAVE_XMP_TOOLKIT
|
|
# define _XMP_SUPPORT_ 1
|
|
#endif
|
|
|
|
-// Make sure an EXIV2_TEST_VERSION macro exists:
|
|
-
|
|
-#ifdef EXIV2_VERSION
|
|
-# ifndef EXIV2_TEST_VERSION
|
|
-# define EXIV2_TEST_VERSION(major,minor,patch) \
|
|
+#ifndef EXIV2_TEST_VERSION
|
|
+# define EXIV2_TEST_VERSION(major,minor,patch) \
|
|
( EXIV2_VERSION >= EXIV2_MAKE_VERSION(major,minor,patch) )
|
|
-# endif
|
|
-#else
|
|
-# define EXIV2_TEST_VERSION(major,minor,patch) (false)
|
|
#endif
|
|
|
|
// With exiv2 > 0.20.0, all makernote header files have been removed to increase binary compatibility.
|
|
--
|
|
cgit v1.1
|
|
|