diff options
Diffstat (limited to 'kde-frameworks/kimageformats')
4 files changed, 2 insertions, 142 deletions
diff --git a/kde-frameworks/kimageformats/Manifest b/kde-frameworks/kimageformats/Manifest index 2735eadb534f..6d77c0bcd659 100644 --- a/kde-frameworks/kimageformats/Manifest +++ b/kde-frameworks/kimageformats/Manifest @@ -1,6 +1,3 @@ -AUX kimageformats-5.108.0-psd-fix-UB-type-punning.patch 3538 BLAKE2B 4f48647edb100cec9529ed6613e1080351f8f5980aff986b6ee0bd77be383aea798df3c117b1a5bcf57136f26473ed15af5e33934253557b2d23e992def70345 SHA512 3dbf83c39291370deb4f59f37da43048f7188f0d7b54d98d6fd92e67d7b184d978705159e95f331ee2f8f65528d3d8221762505a43cae30428fc3dcb274f9794 -DIST kimageformats-5.108.0.tar.xz 12999676 BLAKE2B 97be58d634be159890cdc460e07fdc524398c7022b1b6d428baea4f6c53524783b05a9857470fae5a44fc7f3a38d852cdb331543c987b01d1328c5adc8739aa7 SHA512 df43867153cecd876fd48fd8c9cbfe78016ed25fe6e1f074f4f395e4c0bf9f62c7bfbe3d40f79fca591d0e07324c4f58de214594a23c227e07bb33cf7f2805f0 DIST kimageformats-5.110.0.tar.xz 15652452 BLAKE2B 69d919850faf419cfea1f170fa6f9b88e2597312e3eafac847ad61ffdf33f0c36d281d413b181a4ae651f18ec3abe8d2da6951f9045c0d317e2b96d059a20b88 SHA512 82a164623832de1157cb3230f8a2f8a970c49b8825ed3a32be811e9d0b48e1675e986f845569dee6c0662427055cad66dafeee235b149c11ccfc5011a739a48d -EBUILD kimageformats-5.108.0-r1.ebuild 1221 BLAKE2B 601968b18314e34f5ffd5d5be0f77123167b37cadb9e887c3432d29f9b947200876b9ed1a0b61bf7e407536e4717b7a34ec5436751dc9b40950f7b2f76e07b30 SHA512 b8ac45dd3134e2ddc5ced615699553826b811f9af59fa60406b4fccfaebc239069082a971b3ae03497bfd8bd6f0b2f4c2cbdb77afb2f471d0c46b3cba15b22dc -EBUILD kimageformats-5.110.0.ebuild 1152 BLAKE2B 40b9027feff4a5cd22f76d3d1c72ed1cb660b90c87799f7f28b2f0e1daef44a77910ae8c0475f1a63c14d7ddb5aed0aa4e63a5a5a730cccd0aa240189965d2c6 SHA512 ffa6180f57fc02b8ac3541dbfeb435506122bc0712e93fd6d940407e99a75c7d9a8964753984713d4a5d926f8bb96d98f965bfbc69007cad11665dace3422974 +EBUILD kimageformats-5.110.0.ebuild 1151 BLAKE2B e5f6bbe2fa9488376f0f8c2df7d726c2ce5c0a430d47b558b440794fc050a9d519e1a60aa271a78c86c0723c4556909ad3e5950ce704f9c3b4c5b9994447cb16 SHA512 fe079fd489bbdc3031d133a5e84d539c9849561c06271a369c49c1785ef52580175a3e9896becd38f7f23cf49ad474fa1b83212edca8ae3885bb961b343dcf92 MISC metadata.xml 719 BLAKE2B f87d63a81cb7e008eed6141a6436eb8dbef4f47c614ad950f5cf4b73b13eb79d496bb64bf64b2b7a1ab7ef5879aa6148acc167e18976dc52f77344e72a9c3040 SHA512 fbd11e370afc821a8ef5a809d9436201f6b679c37651fbc2d7f74ab701d85d369f27740b6253800efa60332f6eeab323973f1007de07cb81b0f9f11c6b0b1fd4 diff --git a/kde-frameworks/kimageformats/files/kimageformats-5.108.0-psd-fix-UB-type-punning.patch b/kde-frameworks/kimageformats/files/kimageformats-5.108.0-psd-fix-UB-type-punning.patch deleted file mode 100644 index 68d853a5f447..000000000000 --- a/kde-frameworks/kimageformats/files/kimageformats-5.108.0-psd-fix-UB-type-punning.patch +++ /dev/null @@ -1,89 +0,0 @@ -From c3a91c3bc62bdd913c55dd83f4e1159ed25310c5 Mon Sep 17 00:00:00 2001 -From: Mirco Miranda <mirco.miranda@systemceramics.com> -Date: Sun, 16 Jul 2023 08:03:58 +0000 -Subject: [PATCH] psd: Fix UB type punning - -BUGS: 471829 ---- - src/imageformats/psd.cpp | 33 ++++++++++++++++++++++++++------- - 1 file changed, 26 insertions(+), 7 deletions(-) - -diff --git a/src/imageformats/psd.cpp b/src/imageformats/psd.cpp -index 7280aea..b0c76e2 100644 ---- a/src/imageformats/psd.cpp -+++ b/src/imageformats/psd.cpp -@@ -42,6 +42,7 @@ - #include <QColorSpace> - - #include <cmath> -+#include <cstring> - - typedef quint32 uint; - typedef quint16 ushort; -@@ -808,6 +809,26 @@ inline quint32 xchg(quint32 v) { - #endif - } - -+inline float xchg(float v) -+{ -+#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN -+# ifdef Q_CC_MSVC -+ float *pf = &v; -+ quint32 f = xchg(*reinterpret_cast<quint32*>(pf)); -+ quint32 *pi = &f; -+ return *reinterpret_cast<float*>(pi); -+# else -+ quint32 t; -+ std::memcpy(&t, &v, sizeof(quint32)); -+ t = xchg(t); -+ std::memcpy(&v, &t, sizeof(quint32)); -+ return v; -+# endif -+#else -+ return v; // never tested -+#endif -+} -+ - template<class T> - inline void planarToChunchy(uchar *target, const char *source, qint32 width, qint32 c, qint32 cn) - { -@@ -818,15 +839,13 @@ inline void planarToChunchy(uchar *target, const char *source, qint32 width, qin - } - } - --template<class T, T min = 0, T max = 1> --inline void planarToChunchyFloat(uchar *target, const char *source, qint32 width, qint32 c, qint32 cn) -+template<class T> -+inline void planarToChunchyFloatToUInt16(uchar *target, const char *source, qint32 width, qint32 c, qint32 cn) - { - auto s = reinterpret_cast<const T*>(source); - auto t = reinterpret_cast<quint16*>(target); - for (qint32 x = 0; x < width; ++x) { -- auto tmp = xchg(s[x]); -- auto ftmp = (*reinterpret_cast<float*>(&tmp) - double(min)) / (double(max) - double(min)); -- t[x * cn + c] = quint16(std::min(ftmp * std::numeric_limits<quint16>::max() + 0.5, double(std::numeric_limits<quint16>::max()))); -+ t[x * cn + c] = quint16(std::min(xchg(s[x]) * std::numeric_limits<quint16>::max() + 0.5, double(std::numeric_limits<quint16>::max()))); - } - } - -@@ -1140,7 +1159,7 @@ static bool LoadPSD(QDataStream &stream, const PSDHeader &header, QImage &img) - } else if (header.depth == 16) { - planarToChunchy<quint16>(scanLine, rawStride.data(), header.width, c, header.channel_count); - } else if (header.depth == 32) { -- planarToChunchyFloat<quint32>(scanLine, rawStride.data(), header.width, c, header.channel_count); -+ planarToChunchyFloatToUInt16<float>(scanLine, rawStride.data(), header.width, c, header.channel_count); - } - } - -@@ -1204,7 +1223,7 @@ static bool LoadPSD(QDataStream &stream, const PSDHeader &header, QImage &img) - } else if (header.depth == 16) { // 16-bits integer images: Grayscale, RGB/RGBA - planarToChunchy<quint16>(scanLine, rawStride.data(), header.width, c, imgChannels); - } else if (header.depth == 32) { // 32-bits float images: Grayscale, RGB/RGBA (coverted to equivalent integer 16-bits) -- planarToChunchyFloat<quint32>(scanLine, rawStride.data(), header.width, c, imgChannels); -+ planarToChunchyFloatToUInt16<float>(scanLine, rawStride.data(), header.width, c, imgChannels); - } - } - } --- -GitLab - diff --git a/kde-frameworks/kimageformats/kimageformats-5.108.0-r1.ebuild b/kde-frameworks/kimageformats/kimageformats-5.108.0-r1.ebuild deleted file mode 100644 index 79b99b6aa67e..000000000000 --- a/kde-frameworks/kimageformats/kimageformats-5.108.0-r1.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ECM_QTHELP="false" -PVCUT=$(ver_cut 1-2) -QTMIN=5.15.9 -inherit ecm frameworks.kde.org - -DESCRIPTION="Framework providing additional format plugins for Qt's image I/O system" - -LICENSE="LGPL-2+" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" -IUSE="avif eps heif jpegxl openexr raw" - -RDEPEND=" - >=dev-qt/qtgui-${QTMIN}:5 - =kde-frameworks/karchive-${PVCUT}*:5 - avif? ( >=media-libs/libavif-0.8.2:= ) - eps? ( >=dev-qt/qtprintsupport-${QTMIN}:5 ) - heif? ( >=media-libs/libheif-1.10.0:= ) - jpegxl? ( media-libs/libjxl ) - openexr? ( >=media-libs/openexr-3:= ) - raw? ( media-libs/libraw:= ) -" -DEPEND="${RDEPEND} - test? ( - >=dev-qt/qtimageformats-${QTMIN}:5 - heif? ( media-libs/libheif[x265] ) - ) -" - -DOCS=( src/imageformats/AUTHORS ) - -PATCHES=( "${FILESDIR}/${P}-psd-fix-UB-type-punning.patch" ) # 5.109 - -src_configure() { - local mycmakeargs=( - -DKIMAGEFORMATS_JXL=$(usex jpegxl) - $(cmake_use_find_package avif libavif) - $(cmake_use_find_package eps Qt5PrintSupport) - -DKIMAGEFORMATS_HEIF=$(usex heif) - $(cmake_use_find_package openexr OpenEXR) - $(cmake_use_find_package raw LibRaw) - ) - ecm_src_configure -} diff --git a/kde-frameworks/kimageformats/kimageformats-5.110.0.ebuild b/kde-frameworks/kimageformats/kimageformats-5.110.0.ebuild index 500d0e2e95bf..7b31d162b874 100644 --- a/kde-frameworks/kimageformats/kimageformats-5.110.0.ebuild +++ b/kde-frameworks/kimageformats/kimageformats-5.110.0.ebuild @@ -11,7 +11,7 @@ inherit ecm frameworks.kde.org DESCRIPTION="Framework providing additional format plugins for Qt's image I/O system" LICENSE="LGPL-2+" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" IUSE="avif eps heif jpegxl openexr raw" RDEPEND=" |