diff --git a/ChangeLog b/ChangeLog index fb08656b6..abf7e5c1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-04-25 Eric Anholt + + * exa/exa_render.c: (exaGlyphsIntersect): + Fix a bug in the intersection computation that could concievably cause + incorrect results to be returned (but would probably usually be + over-conservative). + 2006-04-25 Eric Anholt * exa/exa_render.c: (exaGlyphsIntersect), (exaGlyphs): diff --git a/exa/exa_render.c b/exa/exa_render.c index 1ce02deab..cdf323a76 100644 --- a/exa/exa_render.c +++ b/exa/exa_render.c @@ -643,8 +643,11 @@ exaGlyphsIntersect(int nlist, GlyphListPtr list, GlyphPtr *glyphs) while (n--) { glyph = *glyphs++; - if (glyph->info.width == 0 || glyph->info.height == 0) + if (glyph->info.width == 0 || glyph->info.height == 0) { + x += glyph->info.xOff; + y += glyph->info.yOff; continue; + } x1 = x - glyph->info.x; if (x1 < MINSHORT)