diff -Nru qtimageformats-opensource-src-5.14.2/debian/changelog qtimageformats-opensource-src-5.14.2/debian/changelog --- qtimageformats-opensource-src-5.14.2/debian/changelog 2020-05-17 15:24:34.000000000 +0000 +++ qtimageformats-opensource-src-5.14.2/debian/changelog 2020-06-24 09:27:26.000000000 +0000 @@ -1,8 +1,9 @@ -qtimageformats-opensource-src (5.14.2-1ubuntu1) groovy; urgency=medium +qtimageformats-opensource-src (5.14.2-2) unstable; urgency=medium - * Ignore tests result on armhf because of QTBUG-84267. + * Backport upstream patch to avoid unaligned access in WEBP decoder. + * Upload to unstable. - -- Dmitry Shachnev Sun, 17 May 2020 18:24:34 +0300 + -- Dmitry Shachnev Wed, 24 Jun 2020 12:27:26 +0300 qtimageformats-opensource-src (5.14.2-1) experimental; urgency=medium diff -Nru qtimageformats-opensource-src-5.14.2/debian/control qtimageformats-opensource-src-5.14.2/debian/control --- qtimageformats-opensource-src-5.14.2/debian/control 2020-05-17 15:24:34.000000000 +0000 +++ qtimageformats-opensource-src-5.14.2/debian/control 2020-06-24 09:27:26.000000000 +0000 @@ -1,8 +1,7 @@ Source: qtimageformats-opensource-src Section: libs Priority: optional -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Debian Qt/KDE Maintainers +Maintainer: Debian Qt/KDE Maintainers Uploaders: Sune Vuorela , Pino Toscano , Lisandro Damián Nicanor Pérez Meyer , diff -Nru qtimageformats-opensource-src-5.14.2/debian/patches/align_icc_profile.diff qtimageformats-opensource-src-5.14.2/debian/patches/align_icc_profile.diff --- qtimageformats-opensource-src-5.14.2/debian/patches/align_icc_profile.diff 1970-01-01 00:00:00.000000000 +0000 +++ qtimageformats-opensource-src-5.14.2/debian/patches/align_icc_profile.diff 2020-06-24 09:27:26.000000000 +0000 @@ -0,0 +1,38 @@ +Description: fix UB in webp decode and memory leak in encoder + Ensure the ICC block is aligned before parsing and clear the writer + after we have initialized it. +Origin: upstream, https://code.qt.io/cgit/qt/qtimageformats.git/commit/?id=b761ff58d6d7b060 +Last-Update: 2020-05-18 + +--- a/src/plugins/imageformats/webp/qwebphandler.cpp ++++ b/src/plugins/imageformats/webp/qwebphandler.cpp +@@ -167,8 +167,11 @@ bool QWebpHandler::read(QImage *image) + // Read global meta-data chunks first + WebPChunkIterator metaDataIter; + if ((m_formatFlags & ICCP_FLAG) && WebPDemuxGetChunk(m_demuxer, "ICCP", 1, &metaDataIter)) { +- const QByteArray iccProfile = QByteArray::fromRawData(reinterpret_cast(metaDataIter.chunk.bytes), +- metaDataIter.chunk.size); ++ QByteArray iccProfile = QByteArray::fromRawData(reinterpret_cast(metaDataIter.chunk.bytes), ++ metaDataIter.chunk.size); ++ // Ensure the profile is 4-byte aligned. ++ if (reinterpret_cast(iccProfile.constData()) & 0x3) ++ iccProfile.detach(); + m_colorSpace = QColorSpace::fromIccProfile(iccProfile); + // ### consider parsing EXIF and/or XMP metadata too. + WebPDemuxReleaseChunkIterator(&metaDataIter); +@@ -288,6 +291,7 @@ bool QWebpHandler::write(const QImage &i + if (!WebPEncode(&config, &picture)) { + qWarning() << "failed to encode webp picture, error code: " << picture.error_code; + WebPPictureFree(&picture); ++ WebPMemoryWriterClear(&writer); + return false; + } + +@@ -336,6 +340,7 @@ bool QWebpHandler::write(const QImage &i + static_cast(device()->write(reinterpret_cast(writer.mem), writer.size))); + } + WebPPictureFree(&picture); ++ WebPMemoryWriterClear(&writer); + + return res; + } diff -Nru qtimageformats-opensource-src-5.14.2/debian/patches/series qtimageformats-opensource-src-5.14.2/debian/patches/series --- qtimageformats-opensource-src-5.14.2/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ qtimageformats-opensource-src-5.14.2/debian/patches/series 2020-06-24 09:27:26.000000000 +0000 @@ -0,0 +1 @@ +align_icc_profile.diff diff -Nru qtimageformats-opensource-src-5.14.2/debian/rules qtimageformats-opensource-src-5.14.2/debian/rules --- qtimageformats-opensource-src-5.14.2/debian/rules 2020-05-17 15:24:34.000000000 +0000 +++ qtimageformats-opensource-src-5.14.2/debian/rules 2020-06-24 09:27:26.000000000 +0000 @@ -21,9 +21,4 @@ rm -rfv $(CURDIR)/debian/qt5-image-formats-plugins/usr/lib/*/cmake/ override_dh_auto_test: -ifeq ($(DEB_HOST_ARCH),armhf) - # Tests are failing on armhf because of https://bugreports.qt.io/browse/QTBUG-84267 - -QT_QPA_PLATFORM=minimal dh_auto_test -else QT_QPA_PLATFORM=minimal dh_auto_test -endif