File gwenview-libexiv-2.8.patch of Package kde3-gwenview
diff -Naru gwenview-1.4.2_orig/src/imageutils/jpegcontent.cpp gwenview-1.4.2/src/imageutils/jpegcontent.cpp
--- gwenview-1.4.2_orig/src/imageutils/jpegcontent.cpp 2023-07-15 19:28:57.986120782 +0900
+++ gwenview-1.4.2/src/imageutils/jpegcontent.cpp 2023-07-15 19:30:21.381971724 +0900
@@ -257,7 +257,7 @@
if (!d->readSize()) return false;
- Exiv2::Image::AutoPtr image;
+ Exiv2::Image::UniquePtr image;
try {
image = Exiv2::ImageFactory::open((unsigned char*)data.data(), data.size());
image->readMetadata();
@@ -296,7 +296,7 @@
if (it == d->mExifData.end()) {
return NOT_AVAILABLE;
}
- return Orientation( it->toLong() );
+ return Orientation( it->toInt64() );
}
@@ -316,7 +316,7 @@
if (it == d->mExifData.end()) {
return 0;
}
- int res = it->toLong();
+ int res = it->toInt64();
QString keyVal = "Exif.Image." + keyName;
Exiv2::ExifKey keyResolution(keyVal.ascii());
it = d->mExifData.findKey(keyResolution);
@@ -332,9 +332,9 @@
const float INCHESPERMETER = (100. / 2.54);
switch (res) {
case 3: // dots per cm
- return (it->toLong() * 100);
+ return (it->toInt64() * 100);
default: // dots per inch
- return (it->toLong() * INCHESPERMETER);
+ return (it->toInt64() * INCHESPERMETER);
}
return 0;
@@ -591,7 +591,7 @@
if (!d->mExifData.empty()) {
Exiv2::ExifThumbC thumb(d->mExifData);
Exiv2::DataBuf thumbnail = thumb.copy();
- image.loadFromData(thumbnail.pData_, thumbnail.size_);
+ image.loadFromData(thumbnail.c_data(), thumbnail.size());
}
return image;
}
@@ -639,7 +639,7 @@
d->mPendingTransformation = false;
}
- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open((unsigned char*)d->mRawData.data(), d->mRawData.size());
+ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open((unsigned char*)d->mRawData.data(), d->mRawData.size());
// Store Exif info
image->setExifData(d->mExifData);