]> git.eshelyaron.com Git - emacs.git/commit
Fix buffer overflow in ns_compute_glyph_string_overhangs
authorDaniel Martín <mardani29@yahoo.es>
Sat, 9 Oct 2021 19:10:20 +0000 (21:10 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 5 Nov 2021 02:39:19 +0000 (03:39 +0100)
commit48af19c1f06c2f3b20e4056bedf137a5e3c0e05e
tree3d3823cc7cfa371718deb81e1f8e6b0fc8e4689e
parent3601e236792a4d3f87d17877926fea9d17c3a5a4
Fix buffer overflow in ns_compute_glyph_string_overhangs

* src/nsterm.m (ns_compute_glyph_string_overhangs): When the first
glyph of a glyph string is a composite glyph, `s->nchars' is 0, so
"s->char2b + s->nchars - 1" dereferenced a position before buffer
`s->char2b'.  Instead, rewrite part of the function to distinguish
between character glyphs and composite glyphs.  For character glyphs,
calculate the font metrics using the `text_extents' function, passing
it the entire glyph string; for composite glyphs, call
`composition_gstring_width'. (Bug#51105)
src/nsterm.m