diff options
author | Maarten Maathuis <madman2003@gmail.com> | 2009-02-08 18:59:17 +0100 |
---|---|---|
committer | Maarten Maathuis <madman2003@gmail.com> | 2009-02-08 18:59:17 +0100 |
commit | 1cb5afdf1ef53e72e0eef28ff6197bf5e86ef758 (patch) | |
tree | 88bd3db0a8ade3eb89e59b05abb66170de0c0964 | |
parent | 6fd8fe9cb993f9b733cf7d878bc324acd09aa48d (diff) |
dix: always NULL pGC->tile.pixmap in Create{Scratch}GC.
-rw-r--r-- | dix/gc.c | 5 | ||||
-rw-r--r-- | exa/exa.c | 1 |
2 files changed, 3 insertions, 3 deletions
@@ -602,6 +602,8 @@ CreateGC(DrawablePtr pDrawable, BITS32 mask, XID *pval, int *pStatus, pGC->fillStyle = FillSolid; pGC->fillRule = EvenOddRule; pGC->arcMode = ArcPieSlice; + pGC->tile.pixel = 0; + pGC->tile.pixmap = NullPixmap; if (mask & GCForeground) { /* @@ -609,12 +611,10 @@ CreateGC(DrawablePtr pDrawable, BITS32 mask, XID *pval, int *pStatus, * and snags the Foreground value to create a pseudo default-tile */ pGC->tileIsPixel = FALSE; - pGC->tile.pixmap = NullPixmap; } else { pGC->tileIsPixel = TRUE; - pGC->tile.pixel = 0; } pGC->patOrg.x = 0; @@ -932,6 +932,7 @@ CreateScratchGC(ScreenPtr pScreen, unsigned depth) pGC->font->refcnt++; pGC->tileIsPixel = TRUE; pGC->tile.pixel = 0; + pGC->tile.pixmap = NullPixmap; pGC->stipple = NullPixmap; pGC->patOrg.x = 0; pGC->patOrg.y = 0; @@ -694,7 +694,6 @@ exaValidateGC(GCPtr pGC, /* Either of these conditions is enough to trigger access to a tile pixmap. */ /* With pGC->tileIsPixel == 1, you run the risk of dereferencing an invalid tile pixmap pointer. */ - /* XXX: find out who is forgetting to NULL these tile pixmap pointers. */ if (pGC->fillStyle == FillTiled || ((changes & GCTile) && !pGC->tileIsPixel)) { pTile = pGC->tile.pixmap; |