diff --git a/graphics/photivo/Makefile b/graphics/photivo/Makefile index 82fc7d296cb5..424647a55950 100644 --- a/graphics/photivo/Makefile +++ b/graphics/photivo/Makefile @@ -1,47 +1,47 @@ PORTNAME= photivo PORTVERSION= 0.0.2015.03.21 -PORTREVISION= 12 +PORTREVISION= 13 CATEGORIES= graphics MASTER_SITES= https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/${PORTNAME}/ DISTNAME= source-archive DIST_SUBDIR= ${PORTNAME} MAINTAINER= danfe@FreeBSD.org COMMENT= Free and open source photo processor WWW= https://photivo.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= liblcms2.so:graphics/lcms2 \ libexiv2.so:graphics/exiv2 \ liblqr-1.so:graphics/liblqr-1 \ liblensfun.so:graphics/lensfun \ libGraphicsMagick.so:graphics/GraphicsMagick \ libfftw3.so:math/fftw3 USES= cmake compiler:c++11-lib desktop-file-utils dos2unix \ gettext-runtime gnome jpeg pkgconfig qt:5 zip USE_GNOME= glib20 USE_QT= qmake:build buildtools:build core gui network widgets DOS2UNIX_FILES= Sources/ptImage.cpp Sources/ptCheck.cpp Sources/filemgmt/ptFileMgrWindow.h \ Sources/ptImageHelper.h Sources/ptMainWindow.h Sources/ptImageHelper.cpp WRKSRC= ${WRKDIR}/${PORTNAME} post-patch: @${REINPLACE_CMD} -e 's,#define cimg_use_openmp 1,//&,' \ ${WRKSRC}/Sources/ptCimg.cpp \ ${WRKSRC}/Sources/ptImage_Pyramid.cpp @${REINPLACE_CMD} -e '/#include "\.\.\/ptImage\.h"/ \ { x ; s/.*/#include / ; H ; x ; }' \ ${WRKSRC}/Sources/filters/ptFilter_EAWavelets.cpp \ ${WRKSRC}/Sources/filters/ptFilter_FilmGrain.cpp \ ${WRKSRC}/Sources/filters/ptFilter_HighpassSharpen.cpp \ ${WRKSRC}/Sources/filters/ptFilter_PyramidDenoise.cpp \ ${WRKSRC}/Sources/filters/ptFilter_StdCurve.cpp \ ${WRKSRC}/Sources/filters/ptFilter_WaveletDenoise.cpp @${REINPLACE_CMD} -e '/static const char src/s,char,int8_t,' \ ${WRKSRC}/Sources/ptDcRaw.cpp .include diff --git a/graphics/photivo/files/patch-Sources_ptImageHelper.cpp b/graphics/photivo/files/patch-Sources_ptImageHelper.cpp index d697215968f1..5c67a26cc7dc 100644 --- a/graphics/photivo/files/patch-Sources_ptImageHelper.cpp +++ b/graphics/photivo/files/patch-Sources_ptImageHelper.cpp @@ -1,10 +1,60 @@ ---- Sources/ptImageHelper.cpp.orig 2019-07-07 08:34:52 UTC +--- Sources/ptImageHelper.cpp.orig 2023-07-02 14:41:47 UTC +++ Sources/ptImageHelper.cpp @@ -34,6 +34,7 @@ #pragma GCC diagnostic pop #include +#include #include #include +@@ -106,7 +107,7 @@ bool ptImageHelper::WriteExif(const QString + if (!AFileName.endsWith(JpegExtensions.at(i))) deleteDNGdata = true; + } + +- Exiv2::Image::AutoPtr Exiv2Image = Exiv2::ImageFactory::open(AFileName.toLocal8Bit().data()); ++ Exiv2::Image::UniquePtr Exiv2Image = Exiv2::ImageFactory::open(AFileName.toLocal8Bit().data()); + + Exiv2Image->readMetadata(); + Exiv2::ExifData outExifData = Exiv2Image->exifData(); +@@ -176,7 +177,7 @@ bool ptImageHelper::WriteExif(const QString + Exiv2Image->writeMetadata(); + return true; + #endif +- } catch (Exiv2::AnyError& Error) { ++ } catch (Exiv2::Error& Error) { + if (Settings->GetInt("JobMode") == 0) { + ptMessageBox::warning(0 ,"Exiv2 Error","No exif data written!\nCaught Exiv2 exception '" + QString(Error.what()) + "'\n"); + } else { +@@ -198,7 +199,7 @@ bool ptImageHelper::ReadExif(const QString &AFi + if (Exiv2::ImageFactory::getType(AFileName.toLocal8Bit().data()) == Exiv2::ImageType::none) + return false; + +- Exiv2::Image::AutoPtr hImage = Exiv2::ImageFactory::open(AFileName.toLocal8Bit().data()); ++ Exiv2::Image::UniquePtr hImage = Exiv2::ImageFactory::open(AFileName.toLocal8Bit().data()); + + if (!hImage.get()) return false; + +@@ -295,19 +296,19 @@ bool ptImageHelper::TransferExif(const QString ASource + if (Exiv2::ImageFactory::getType(ASourceFile.toLocal8Bit().data()) == Exiv2::ImageType::none) + return false; + +- Exiv2::Image::AutoPtr hSourceImage = Exiv2::ImageFactory::open(ASourceFile.toLocal8Bit().data()); ++ Exiv2::Image::UniquePtr hSourceImage = Exiv2::ImageFactory::open(ASourceFile.toLocal8Bit().data()); + + if (!hSourceImage.get()) return false; + + hSourceImage->readMetadata(); + +- Exiv2::Image::AutoPtr hTargetImage = Exiv2::ImageFactory::open(ATargetFile.toLocal8Bit().data()); ++ Exiv2::Image::UniquePtr hTargetImage = Exiv2::ImageFactory::open(ATargetFile.toLocal8Bit().data()); + + hTargetImage->clearMetadata(); + hTargetImage->setMetadata(*hSourceImage); + hTargetImage->writeMetadata(); + return true; +- } catch (Exiv2::AnyError& Error) { ++ } catch (Exiv2::Error& Error) { + if (Settings->GetInt("JobMode") == 0) { + ptMessageBox::warning(0 ,"Exiv2 Error","No exif data written!\nCaught Exiv2 exception '" + QString(Error.what()) + "'\n"); + } else { diff --git a/graphics/photivo/files/patch-Sources_ptMain.cpp b/graphics/photivo/files/patch-Sources_ptMain.cpp new file mode 100644 index 000000000000..f250b801004f --- /dev/null +++ b/graphics/photivo/files/patch-Sources_ptMain.cpp @@ -0,0 +1,11 @@ +--- Sources/ptMain.cpp.orig 2016-03-22 03:34:55 UTC ++++ Sources/ptMain.cpp +@@ -5325,7 +5325,7 @@ void ReadSidecar(const QString& Sidecar) + return; + } + +- Exiv2::Image::AutoPtr hImage = Exiv2::ImageFactory::open(Sidecar.toLocal8Bit().data()); ++ Exiv2::Image::UniquePtr hImage = Exiv2::ImageFactory::open(Sidecar.toLocal8Bit().data()); + + if (!hImage.get()) { + return;