xf86-video-intel: src/sna/sna_driver.c
Chris Wilson
ickle at kemper.freedesktop.org
Sat Jun 2 00:56:07 PDT 2012
src/sna/sna_driver.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
New commits:
commit 58fc03b8c36688e9fa7925aa82b83d36c9decb7e
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Sat Jun 2 08:53:24 2012 +0100
sna: Prevent NULL deref with early termination and DBG enabled
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index f8e386b..a1581f3 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -213,6 +213,7 @@ static Bool sna_create_screen_resources(ScreenPtr screen)
return TRUE;
cleanup_front:
+ screen->SetScreenPixmap(NULL);
screen->DestroyPixmap(sna->front);
sna->front = NULL;
return FALSE;
@@ -326,7 +327,8 @@ static int sna_open_drm_master(ScrnInfoPtr scrn)
err = drmSetInterfaceVersion(fd, &sv);
if (err != 0) {
xf86DrvMsg(scrn->scrnIndex, X_ERROR,
- "[drm] failed to set drm interface version.\n");
+ "[drm] failed to set drm interface version: %s [%d].\n",
+ strerror(-err), -err);
drmClose(fd);
return -1;
}
@@ -362,8 +364,10 @@ static void sna_close_drm_master(ScrnInfoPtr scrn)
{
struct sna_device *dev = sna_device(scrn);
- DBG(("%s(open_count=%d)\n", __FUNCTION__, dev->open_count));
+ if (dev == NULL)
+ return;
+ DBG(("%s(open_count=%d)\n", __FUNCTION__, dev->open_count));
if (--dev->open_count)
return;
More information about the xorg-commit
mailing list