summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-07-21 09:06:06 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2010-07-21 09:08:28 +0100
commitc57840b272ba88fddf22484929608431879b0fab (patch)
tree871b38b77de214c92f11d0e55f40e36459a39158
parent7a4bfaf42412f373bbc8ebe1536018dcacde7436 (diff)
uxa: Check for failed pixmap allocation
Fixes: Bug 29187 - crash in intel_drv https://bugs.freedesktop.org/show_bug.cgi?id=29187 Backtrace: 0: /usr/bin/X (xorg_backtrace+0x28) [0x466808] 1: /usr/bin/X (0x400000+0x67c79) [0x467c79] 2: /lib/libpthread.so.0 (0x7ff19b297000+0xef60) [0x7ff19b2a5f60] 3: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7ff197986000+0x34684) => uxa/uxa-render.c:841 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--uxa/uxa-render.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/uxa/uxa-render.c b/uxa/uxa-render.c
index 9709a14e..3194d230 100644
--- a/uxa/uxa-render.c
+++ b/uxa/uxa-render.c
@@ -835,8 +835,10 @@ uxa_acquire_drawable(ScreenPtr pScreen,
PictureMatchFormat(pScreen, depth, pSrc->format),
0, 0, serverClient, &error);
pScreen->DestroyPixmap(pPixmap);
- ValidatePicture(pDst);
+ if (!pDst)
+ return 0;
+ ValidatePicture(pDst);
done:
pDst->componentAlpha = pSrc->componentAlpha;
*out_x = 0;