diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-09-07 07:47:22 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-09-07 07:47:22 +0000 |
commit | e238aa77b1fb3c2f55aef2ef2c91ce52166d2cc8 (patch) | |
tree | 234157bb7e4ecfbb6c3689e0d750d93a70139661 /src/imageutils | |
parent | fccb0a3e5194aa3f1455c57b4e22b00c9f0e435d (diff) | |
download | gwenview-e238aa77b1fb3c2f55aef2ef2c91ce52166d2cc8.tar.gz gwenview-e238aa77b1fb3c2f55aef2ef2c91ce52166d2cc8.zip |
EXIV2 patch
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/gwenview@1172409 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/imageutils')
-rw-r--r-- | src/imageutils/jpegcontent.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/imageutils/jpegcontent.cpp b/src/imageutils/jpegcontent.cpp index 9c8efeb..d23d74f 100644 --- a/src/imageutils/jpegcontent.cpp +++ b/src/imageutils/jpegcontent.cpp @@ -47,6 +47,17 @@ extern "C" { #include "imageutils/jpegcontent.h" #include "imageutils/jpegerrormanager.h" +// Make sure an EXIV2_TEST_VERSION macro exists: + +#ifdef EXIV2_VERSION +# 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 + namespace ImageUtils { const int INMEM_DST_DELTA=4096; @@ -594,7 +605,12 @@ void JPEGContent::applyPendingTransformation() { QImage JPEGContent::thumbnail() const { QImage image; if (!d->mExifData.empty()) { +#if (EXIV2_TEST_VERSION(0,17,91)) + Exiv2::ExifThumbC thumb(d->mExifData); + Exiv2::DataBuf const thumbnail = thumb.copy(); +#else Exiv2::DataBuf thumbnail = d->mExifData.copyThumbnail(); +#endif image.loadFromData(thumbnail.pData_, thumbnail.size_); } return image; @@ -616,7 +632,12 @@ void JPEGContent::setThumbnail(const QImage& thumbnail) { return; } +#if (EXIV2_TEST_VERSION(0,17,91)) + Exiv2::ExifThumb thumb(d->mExifData); + thumb.setJpegThumbnail((unsigned char*)array.data(), array.size()); +#else d->mExifData.setJpegThumbnail((unsigned char*)array.data(), array.size()); +#endif } |