From 2adca7c0ca506480bde0b87afbc6c7a03919a829 Mon Sep 17 00:00:00 2001 From: Alessandro Astone Date: Mon, 21 Apr 2025 10:06:58 +0200 Subject: [PATCH] jxr: Use qsizetype for image size variables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes type mismatch on 32-bit architectures. /builddir/build/BUILD/kf6-kimageformats-6.13.0-build/kimageformats-6.13.0/src/imageformats/jxr.cpp: In member function ‘virtual bool JXRHandler::read(QImage*)’: /builddir/build/BUILD/kf6-kimageformats-6.13.0-build/kimageformats-6.13.0/src/imageformats/jxr.cpp:994:88: error: no matching function for call to ‘min(qint64&, qsizetype)’ 994 | std::memcpy(img.scanLine(y), ba.data() + convStrideSize * y, (std::min)(convStrideSize, img.bytesPerLine())); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --- src/imageformats/jxr.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/imageformats/jxr.cpp b/src/imageformats/jxr.cpp index fbc2bcf..7e535f1 100644 --- a/src/imageformats/jxr.cpp +++ b/src/imageformats/jxr.cpp @@ -977,9 +977,9 @@ bool JXRHandler::read(QImage *outImage) return false; } } else { // additional buffer needed - qint64 convStrideSize = (img.width() * d->pDecoder->WMP.wmiI.cBitsPerUnit + 7) / 8; - qint64 buffSize = convStrideSize * img.height(); - qint64 limit = QImageReader::allocationLimit(); + qsizetype convStrideSize = (img.width() * d->pDecoder->WMP.wmiI.cBitsPerUnit + 7) / 8; + qsizetype buffSize = convStrideSize * img.height(); + qsizetype limit = QImageReader::allocationLimit(); if (limit && (buffSize + img.sizeInBytes()) > limit * 1024 * 1024) { qCWarning(LOG_JXRPLUGIN) << "JXRHandler::read() unable to covert due to allocation limit set:" << limit << "MiB"; return false;