From eaed7545a25a08b3223bf620c2ab6f80fe7cfdf6 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 26 Apr 2006 01:32:55 +0000 Subject: [PATCH] Fix a bug in the intersection computation that could concievably cause incorrect results to be returned (but would probably usually be over-conservative). --- ChangeLog | 7 +++++++ exa/exa_render.c | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) 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)