Skip to content

[skrifa] autohint: explicit guards for indexed access - #1988

Merged
dfrg merged 2 commits into
mainfrom
ah_blues_limit
Jul 30, 2026
Merged

[skrifa] autohint: explicit guards for indexed access#1988
dfrg merged 2 commits into
mainfrom
ah_blues_limit

Conversation

@dfrg

@dfrg dfrg commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Ensure we don't index OOB for various arrays.

internal bug ref: b/525070971

dfrg added 2 commits July 29, 2026 15:45
Ensure we don't index OOB for various arrays.

internal bug ref: b/525070971
@dfrg
dfrg merged commit 5d8cc1d into main Jul 30, 2026
19 checks passed
@dfrg
dfrg deleted the ah_blues_limit branch July 30, 2026 19:05
dfrg added a commit that referenced this pull request Aug 12, 2026
)

Note: patch bumps for font-types and shared-brotli-patch-decoder were already done in the MSRV reduction patch

     Changes for font-types from font-types-v0.12.2 to 0.12.3
             d28db34 [font-types] remove assert from Version16Dot16::new (#2041)
             21b17b4 [font-types] add normalize method to bbox (#2043)
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             227d12e [chore] Fix some typos (#2005)
     Changes for read-fonts from read-fonts-v0.42.1 to 0.43.0
             39fdc1a [chore] tidy for release (#2045)
             78aa50d [read-fonts] fvar: use different normalization path for large number of axes (#2038)
             73fd5ce [read-fonts] reduce avar application complexity (#2036)
             e29b8b5 [read-fonts] avoid panics in classdef intersection  (#2028)
             4e1f904 [read-fonts] FontAPI: add pure CFF variant to FontKind (#2034)
             555ff88 [read-fonts] avoid Device iter subtraction overflow (#2027)
             10b5d69 [read-fonts] handle FD Select bounds (#2026)
             e63756f [read-fonts] Ignore short indexTablesSize when reading EBLC/CBLC index subtables (#2020)
             419aa42 fix build issues caused by merging stacked PR
             a9aa24f [glyph closure] use IntSet is_subset() API
             6cd24c9 Add is_subset() method to IntSet.
             bb6f871 Add is_subset() method to IntSet.
             e0487b9 [glyph closure] address review comments
             950fd5f fix clippy
             ae4b992 [glyph closure] make fnv feature gated
             d386422 [glyph closure] add intersected_class_cache
             e00c732 [closure] Add FnvHashMap, use it as a cache during closure
             35ca72a [glyph closure] remove unncessary set allocation
             95e1159 [glyph closure] move seen_sequence_indices out of loop
             1d3e931 [glyph closure] reduce set allocations for (Chain)ContextFormat1
             76c63d8 [closure] reduce set allocations for (Chain)ContextFormat1
             40b07af [glyph closure] reduce allocations for (Chain)ContextFormat2
             3dfbae6 [glyph closure] add a fn in classdef
             7d464b8 [read-fonts] aat: use wrapping to avoid panics on 32-bit (#2017)
             d0f5d07 [read-fonts] avoid overflow panics in CFF charset (#2016)
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             f95a2db [read-fonts] type1: remove unbounded recursion (#1993)
             227d12e [chore] Fix some typos (#2005)
             d876963 [read-fonts] limit work in charstring eval (#2000)
             40cd87d Remove support for IFT Patch Map Format 1.
             8f5f551 [read-fonts] apply imageDataOffset to format 4 sbit offsets (#1994)
             746053e fix clippy
             d394729 [glyph closure] remove unused fn
             823c1ea [glyph closure] try to reduce allocations by splitting borrows
             8ec1dca [read-fonts] avoid range reset for cmap12/13 iter (#1986)
             fbe0cb3 [read-fonts] optimize post glyph name iter (#1983)
     Changes for font-test-data from font-test-data-v0.8.0 to 0.9.0
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             40cd87d Remove support for IFT Patch Map Format 1.
             fbe0cb3 [read-fonts] optimize post glyph name iter (#1983)
     Changes for write-fonts from write-fonts-v0.51.0 to 0.52.0
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             227d12e [chore] Fix some typos (#2005)
             40cd87d Remove support for IFT Patch Map Format 1.
     Changes for skrifa from skrifa-v0.45.1 to 0.46.0
             c244623 [skrifa] tthint: ignore fractional bits in parity checks- #2040 #2040
             f3edd9d [skrifa] tthint: avoid overflow in line_vector (#2039)
             60877df [skrifa] autohint: avoid panic on font with 0 glyphs (#2044)
             29ae374 [skrifa] COLRv1: avoid unbalanced stack state on error  (#2031)
             e829e72 [skrifa] VARC: limit number of edges processed (#2032)
             9bbb04d [skrifa] COLRv1: remove nested traversal optimization and limit total work (#2009)
             487a333 [skrifa] avoid more overflow panics in TT hinting (#2011)
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             f43403c skrifa/varc: don't panic on a null MultiItemVariationStore offset (#2012)
             867fe4d skrifa/varc: bound condition-evaluation recursion (#2014)
             5d8cc1d [skrifa] autohint: explicit guards for indexed access (#1988)
             38fdf8c [skrifa] autohint: ensure indices fit in u16 (#1989)
             b7487ff [skrifa] autohint: avoid panic on overflow (#1987)
             1041d90 [skrifa] smallvec: don't pretend we do fallible alloc (#1990)
             fbe0cb3 [read-fonts] optimize post glyph name iter (#1983)
     Changes for skera from skera-v0.5.1 to 0.6.0
             961143e [skera-repacker] use enum type for parents
             b65f470 [skera-repack] single parent optimization
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             4d03189 [skera] add doc for profiling skera
             227d12e [chore] Fix some typos (#2005)
             aeede19 [skera] name: don't panic on out-of-range name record count
             37c89dd [skera] move plan creation backc into interation loop
             21571e8 [skera] move plan creation out of iterating loop
             739ee69 [skera] tweak Benchmark suite
             0d5779d [skera-repack] revert previous change to add_parent()
             0c818f8 [skera] fix comment
             a16ef39 [skera-repack] fix fix_virtual_links() in ligatureSubst splitting
             3213a55 [skera-rapack] remove unused fn
             d2b3791 [skera-repack] fix LigastureSubst table splitting
             660a4f8 [skera-repack] fix MarkBasePos table splitting
             aa57058 [skera-repack] make a copy of shared ClassDef before mutation
             0d01f50 [skera-repack] make a copy of shared coverage table before mutation
             ad9d216 [skera] update remap_child()
             dd3b9cf [skera-repack] fix is_shared()
             c54a417 [skera] add copy_data option for duplicate_vertex()
     Changes for shared-brotli-patch-decoder from shared-brotli-patch-decoder-v0.1.4 to 0.1.5
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
     Changes for incremental-font-transfer from incremental-font-transfer-v0.6.0 to 0.7.0
             8f295ea Lower MSRV to 1.85 and add MSRV CI check
             40cd87d Remove support for IFT Patch Map Format 1.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants