xf86-video-intel: src/sna/sna_glyphs.c

Chris Wilson ickle at kemper.freedesktop.org
Mon Aug 12 14:27:29 PDT 2013


 src/sna/sna_glyphs.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 5775731b6489c63212914163f51b7a576df70658
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Aug 12 22:24:47 2013 +0100

    sna/glyphs: Do not attempt to release the negative cache lookup
    
    Following
    
    commit 021c59f6243c51871f664e5fdd43aa00a809033a
    Author: Chris Wilson <chris at chris-wilson.co.uk>
    Date:   Sat Aug 10 13:15:48 2013 +0000
    
        sna/glyphs: Micro-optimise glyph drawing
    
    we need to be careful during sna_glyph_release() that the atlas points
    into the glyph cache before releasing it. Fortunately caught by an
    assertion.
    
    Reported-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_glyphs.c b/src/sna/sna_glyphs.c
index 29c3f56..b34f388 100644
--- a/src/sna/sna_glyphs.c
+++ b/src/sna/sna_glyphs.c
@@ -2217,7 +2217,7 @@ sna_glyph_unrealize(ScreenPtr screen, GlyphPtr glyph)
 		p->image = NULL;
 	}
 
-	if (p->atlas) {
+	if (p->atlas && p->atlas != GetGlyphPicture(glyph, screen)) {
 		struct sna *sna = to_sna_from_screen(screen);
 		struct sna_glyph_cache *cache = &sna->render.glyph[p->pos&1];
 		DBG(("%s: releasing glyph pos %d from cache %d\n",


More information about the xorg-commit mailing list