summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--exa/exa_glyphs.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/exa/exa_glyphs.c b/exa/exa_glyphs.c
index 918fd8553..d55839c8d 100644
--- a/exa/exa_glyphs.c
+++ b/exa/exa_glyphs.c
@@ -469,7 +469,9 @@ exaGlyphCacheBufferGlyph(ScreenPtr pScreen,
y = CACHE_Y(pos);
for (i = 0; i < buffer->count; i++) {
- if (buffer->rects[i].xSrc == x && buffer->rects[i].ySrc == y) {
+ if (pSrc ?
+ (buffer->rects[i].xMask == x && buffer->rects[i].yMask == y) :
+ (buffer->rects[i].xSrc == x && buffer->rects[i].ySrc == y)) {
DBG_GLYPH_CACHE((" must flush buffer\n"));
return ExaGlyphNeedFlush;
}