VP9 error resilience: Added uncompressed and compressed header size checks. (#592)

* * VP9 error resilience: Added uncompressed and compressed header size checks.

* * Minor format change.

[ROCm/rocdecode commit: 24b0c59d71]
Этот коммит содержится в:
jeffqjiangNew
2025-05-21 10:04:16 -04:00
коммит произвёл GitHub
родитель 9523ee16be
Коммит 6b8c4f82ff
+8
Просмотреть файл
@@ -585,6 +585,14 @@ ParserResult Vp9VideoParser::ParseUncompressedHeader(uint8_t *p_stream, size_t s
new_seq_activated_ = true;
}
uncomp_header_size_ = (offset + 7) >> 3;
if (uncomp_header_size_ > size) {
ERR("Uncompressed header size (" + TOSTR(uncomp_header_size_) + ") exceeds frame data size (" + TOSTR(size) + ")");
return PARSER_WRONG_STATE;
}
if (p_uncomp_header->header_size_in_bytes > (size - uncomp_header_size_)) {
ERR("header_size_in_bytes (" + TOSTR(p_uncomp_header->header_size_in_bytes) + ") exceeds allowed size (" + TOSTR(size - uncomp_header_size_) + ")");
return PARSER_WRONG_STATE;
}
return PARSER_OK;
}