Highlights
Out-of-bounds Write: 2 prior fixes. Scrutinize any change in this area.
freetype/freetype.go: most-fixed (1 issue). Treat as high-risk during review.
3 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Out-of-bounds Write: The TrueType bytecode interpreter's stack and storage can be dynamically allocated based on untrusted 'maxp' table limits, leading to out-of-bounds writes if limits are not correctly validated during hinting execution. This risk is highlighted by historical fixes targeting dynamic stack and store allocations.
Path Traversal: Lack of strict bounds checks on the TrueType bytecode interpreter's storage index ('h.store[i]') allows arbitrary out-of-bounds memory read/write operations when interpreting bytecode instructions.
Out-of-bounds Read: Integer overflow during the conversion of a uint16 glyph index to a file offset can lead to out-of-bounds slice accesses when referencing 'f.loca' table offsets. Proper integer casting before multiplication is crucial here.