diff --git a/src/imageformats/ani.cpp b/src/imageformats/ani.cpp index 47d89a9..72eb09e 100644 --- a/src/imageformats/ani.cpp +++ b/src/imageformats/ani.cpp @@ -325,6 +325,9 @@ bool ANIHandler::ensureScanned() const } const auto riffSizeData = device()->read(sizeof(quint32_le)); + if (riffSizeData.size() != sizeof(quint32_le)) { + return false; + } const auto riffSize = *(reinterpret_cast(riffSizeData.data())); // TODO do a basic sanity check if the size is enough to hold some metadata and a frame? if (riffSize == 0) {