diff options
author | Dave Airlie <airlied@gmail.com> | 2012-04-13 12:20:29 +0100 |
---|---|---|
committer | Dave Airlie <airlied@gmail.com> | 2012-04-13 12:20:29 +0100 |
commit | 24e3aade428c4d30a82bf0ab4d4ac1d3af068bff (patch) | |
tree | 4c4e7763a82b8952b8f7297f59ce4c5f50f1c4ff | |
parent | 97812828fdf9e26f01123a13e660027e3cc574a4 (diff) |
gc: fix crash in fbValidateGC
-rw-r--r-- | drv/imped_gc.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drv/imped_gc.c b/drv/imped_gc.c index b5fc39e59..edc803721 100644 --- a/drv/imped_gc.c +++ b/drv/imped_gc.c @@ -79,6 +79,14 @@ impedValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr pDrawable) for (i = 0; i < pGC->pScreen->num_gpu; i++) { pDrvGC = pGC->gpu[i]; + /* check tile pixmap */ + if (pGC->fillStyle == FillTiled && !pGC->tileIsPixel) { + if (pDrvGC->tile.pixmap != pGC->tile.pixmap->gpu[i]) { + pDrvGC->tile.pixmap = pGC->tile.pixmap->gpu[i]; + pDrvGC->tile.pixmap->refcnt++; + } + } + pDrvGC->funcs->ValidateGC(pDrvGC, changes, &pPixmap->gpu[i]->drawable); } #ifdef COMPOSITE |