summaryrefslogtreecommitdiff
path: root/exa
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2007-02-14 10:39:46 -0800
committerEric Anholt <eric@anholt.net>2007-02-14 11:13:21 -0800
commita5f19c5150a7b3dc2ff3ad759ee1a6ab0ad8925c (patch)
treef716db0c94fbed6f9c338405629ecaebe9913442 /exa
parenta492d494f51caf15a5cb979dc335387486c105d1 (diff)
Mark sync when UploadToScreen succeeds in exaGlyphs().
Diffstat (limited to 'exa')
-rw-r--r--exa/exa_render.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/exa/exa_render.c b/exa/exa_render.c
index 75108a75c..a442987fe 100644
--- a/exa/exa_render.c
+++ b/exa/exa_render.c
@@ -995,15 +995,17 @@ exaGlyphs (CARD8 op,
* First we try to use UploadToScreen, if we can, then we fall back
* to a plain exaCopyArea in case of failure.
*/
- if (!pExaScr->info->UploadToScreen ||
- !exaPixmapIsOffscreen(pPixmap) ||
- !(*pExaScr->info->UploadToScreen) (pPixmap, 0, 0,
+ if (pExaScr->info->UploadToScreen &&
+ exaPixmapIsOffscreen(pPixmap) &&
+ (*pExaScr->info->UploadToScreen) (pPixmap, 0, 0,
glyph->info.width,
glyph->info.height,
glyphdata,
PixmapBytePad(glyph->info.width,
list->format->depth)))
{
+ exaMarkSync (pScreen);
+ } else {
/* Set up the scratch pixmap/GC for doing a CopyArea. */
if (pScratchPixmap == NULL) {
/* Get a scratch pixmap to wrap the original glyph data */