From 3534a5e5d9c5af85149c799f324257f89507fa23 Mon Sep 17 00:00:00 2001 From: Maarten Maathuis Date: Fri, 26 Dec 2008 16:38:27 +0100 Subject: exa: Allow drivers to set non-NULL devPrivate.ptr for !offscreen pixmaps. --- exa/exa.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/exa/exa.c b/exa/exa.c index d7949fde9..ba063bb04 100644 --- a/exa/exa.c +++ b/exa/exa.c @@ -313,6 +313,11 @@ exaCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, datasize = h * paddedWidth; + /* Set this before driver hooks, to allow for !offscreen pixmaps. + * !offscreen pixmaps have a valid pointer at all times. + */ + pPixmap->devPrivate.ptr = NULL; + pExaPixmap->driverPriv = pExaScr->info->CreatePixmap(pScreen, datasize, 0); if (!pExaPixmap->driverPriv) { fbDestroyPixmap(pPixmap); @@ -325,7 +330,6 @@ exaCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, pExaPixmap->fb_ptr = NULL; pExaPixmap->pDamage = NULL; pExaPixmap->sys_ptr = pPixmap->devPrivate.ptr; - pPixmap->devPrivate.ptr = NULL; } else { pExaPixmap->driverPriv = NULL; -- cgit v1.2.3