diff options
Diffstat (limited to 'src/gui/util')
-rw-r--r-- | src/gui/util/qktxhandler.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gui/util/qktxhandler.cpp b/src/gui/util/qktxhandler.cpp index cd8ca3635e..9f4545f3af 100644 --- a/src/gui/util/qktxhandler.cpp +++ b/src/gui/util/qktxhandler.cpp @@ -148,7 +148,7 @@ QTextureFileData QKtxHandler::read() texData.setNumFaces(decode(header->numberOfFaces)); const quint32 bytesOfKeyValueData = decode(header->bytesOfKeyValueData); - if (headerSize + bytesOfKeyValueData < buf.length()) // oob check + if (headerSize + bytesOfKeyValueData < quint64(buf.length())) // oob check texData.setKeyValueMetadata( decodeKeyValues(QByteArrayView(buf.data() + headerSize, bytesOfKeyValueData))); quint32 offset = headerSize + bytesOfKeyValueData; @@ -227,7 +227,7 @@ QMap<QByteArray, QByteArray> QKtxHandler::decodeKeyValues(QByteArrayView view) c decode(qFromUnaligned<quint32>(view.constData() + offset)); offset += sizeof(quint32); - if (offset + keyAndValueByteSize > view.size()) + if (offset + keyAndValueByteSize > quint64(view.size())) break; // oob read // 'key' is a UTF-8 string ending with a null terminator, 'value' is the rest. |