diff --git a/src/gui/painting/qicc.cpp b/src/gui/painting/qicc.cpp index 5e30ace5495..149a67655a4 100644 --- a/src/gui/painting/qicc.cpp +++ b/src/gui/painting/qicc.cpp @@ -646,7 +646,7 @@ bool fromIccProfile(const QByteArray &data, QColorSpace *colorSpace) const ICCProfileHeader header = qFromUnaligned(data.constData()); if (!isValidIccProfile(header)) return false; // if failed we already printing a warning - if (qsizetype(header.profileSize) > data.size()) { + if (qsizetype(header.profileSize) > data.size() || qsizetype(header.profileSize) < qsizetype(sizeof(ICCProfileHeader))) { qCWarning(lcIcc) << "fromIccProfile: failed size sanity 2"; return false; }