Files
AnyPS5/core/libs/prx/libSceVideodec
Dean Galvinandfogydes 13d4482884 fix(libSceVideodec): read the full size fields and check them before the structures
ConfigInfo::thisSize and ResourceInfo::thisSize are 64-bit, so read them
as std::uint64_t in CreateDecoder and QueryResourceInfo. Decode, Flush,
DeleteDecoder and Reset now read and check each thisSize before copying
the whole structure in, so a short structure at the end of a mapped page
gets the struct size error, not the pointer error. CreateDecoder no
longer writes ctrl before it can fail; the copy-out after creation
already cleans up. The debt entry now says that the console's answer for
an unreadable pointer is not measured.

Tests cover size fields with only their upper bits set, short
structures at the end of a page, an untouched ctrl after a failed
create, and read-only output blocks.

Co-authored-by: fogydes <[email protected]>
2026-11-06 03:14:22 +13:00
..