From 528b4e36ade482df99747081688ae52cfaeb28eb Mon Sep 17 00:00:00 2001 From: Alan Hourihane Date: Wed, 18 Jun 2008 22:34:02 +0100 Subject: [PATCH] Set driverPriv immediately on CreatePixmap. If it's NULL anyway, we bail, if not, it lets ModifyPixmapHeader know about the private. --- exa/exa.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/exa/exa.c b/exa/exa.c index fc047483d..48352bd5b 100644 --- a/exa/exa.c +++ b/exa/exa.c @@ -314,7 +314,6 @@ exaCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, if (driver_alloc) { size_t paddedWidth, datasize; - void *driver_priv; paddedWidth = ((w * bpp + FB_MASK) >> FB_SHIFT) * sizeof(FbBits); if (paddedWidth / 4 > 32767 || h > 32767) @@ -327,22 +326,21 @@ exaCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, datasize = h * paddedWidth; - driver_priv = pExaScr->info->CreatePixmap(pScreen, datasize, 0); - if (!driver_priv) { + pExaPixmap->driverPriv = pExaScr->info->CreatePixmap(pScreen, datasize, 0); + if (!pExaPixmap->driverPriv) { fbDestroyPixmap(pPixmap); return NULL; } (*pScreen->ModifyPixmapHeader)(pPixmap, w, h, 0, 0, paddedWidth, NULL); - pExaPixmap->driverPriv = driver_priv; pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; pExaPixmap->fb_ptr = NULL; } else { - pExaPixmap->driverPriv = NULL; - /* Scratch pixmaps may have w/h equal to zero, and may not be - * migrated. - */ + pExaPixmap->driverPriv = NULL; + /* Scratch pixmaps may have w/h equal to zero, and may not be + * migrated. + */ if (!w || !h) pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; else