From ac885a34ecd56b32788c6ca67ef657852bfa2308 Mon Sep 17 00:00:00 2001 From: Eirik Aavitsland Date: Mon, 29 Jul 2019 10:04:23 +0200 Subject: Revert "Fix comparisons of image with different color spaces" QImage comparison has always ignored differences in metadata. Introducing colorspace comparison can break backwards compatibility, as not all image formats or handlers have colorspace capability. This partially reverts commit 733ca2230c283cdfaae424eac481ddc33593f44f. Fixes: QTBUG-77205 Change-Id: I1d525a9727e84502624cd118f503eec7be306c99 Reviewed-by: Allan Sandfeld Jensen --- src/gui/image/qimage.cpp | 4 +--- tests/auto/gui/image/qimage/tst_qimage.cpp | 18 ------------------ 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp index 7ac4b3546e..cd2fe5bc10 100644 --- a/src/gui/image/qimage.cpp +++ b/src/gui/image/qimage.cpp @@ -3834,9 +3834,7 @@ bool QImage::operator==(const QImage & i) const return false; // obviously different stuff? - if (i.d->height != d->height || i.d->width != d->width) - return false; - if (i.d->format != d->format || i.d->colorSpace != d->colorSpace) + if (i.d->height != d->height || i.d->width != d->width || i.d->format != d->format) return false; if (d->format != Format_RGB32) { diff --git a/tests/auto/gui/image/qimage/tst_qimage.cpp b/tests/auto/gui/image/qimage/tst_qimage.cpp index e007a15419..441ec17412 100644 --- a/tests/auto/gui/image/qimage/tst_qimage.cpp +++ b/tests/auto/gui/image/qimage/tst_qimage.cpp @@ -232,8 +232,6 @@ private slots: void wideImage(); - void colorspaceEquality(); - #if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) void toWinHBITMAP_data(); void toWinHBITMAP(); @@ -3620,22 +3618,6 @@ void tst_QImage::wideImage() // Qt6: Test that it actually works on 64bit architectures. } -void tst_QImage::colorspaceEquality() -{ - QImage image1(10, 10, QImage::Format_RGB32); - image1.fill(Qt::red); - QImage image2(image1); - QCOMPARE(image1, image2); - image1.setColorSpace(QColorSpace::SRgbLinear); - QVERIFY(image1 != image2); - image2.setColorSpace(QColorSpace::SRgbLinear); - QVERIFY(image1 == image2); - image1.setColorSpace(QColorSpace(QColorSpace::Gamut::DciP3D65, QColorSpace::TransferFunction::Gamma, 2.2f)); - QVERIFY(image1 != image2); - image2.setColorSpace(QColorSpace(QColorSpace::Gamut::DciP3D65, QColorSpace::TransferFunction::Gamma, 2.2001f)); - QVERIFY(image1 == image2); -} - #if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) QT_BEGIN_NAMESPACE Q_GUI_EXPORT HBITMAP qt_imageToWinHBITMAP(const QImage &p, int hbitmapFormat = 0); -- cgit v1.2.3