From a26c77ff432d2e85a2665fc36fca25143460c476 Mon Sep 17 00:00:00 2001 From: Alan Hourihane Date: Fri, 13 Feb 2009 13:45:08 +0000 Subject: glx: fix retval checks when failures occur for drawable creation. --- glx/glxdri.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'glx') diff --git a/glx/glxdri.c b/glx/glxdri.c index 8fb90cbeb..fb9578243 100644 --- a/glx/glxdri.c +++ b/glx/glxdri.c @@ -647,7 +647,7 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen, if (visual->vid == glxConfig->visualID) break; if (i == pScreen->numVisuals) - return GL_FALSE; + return NULL; context->hwContextID = FakeClientID(0); @@ -656,6 +656,9 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen, context->hwContextID, &hwContext); __glXleaveServer(GL_FALSE); + if (!retval) + return NULL; + context->driContext = screen->legacy->createNewContext(screen->driScreen, config->driConfig, @@ -707,6 +710,11 @@ __glXDRIscreenCreateDrawable(__GLXscreen *screen, pDraw, &hwDrawable); __glXleaveServer(GL_FALSE); + if (!retval) { + xfree(private); + return NULL; + } + /* The last argument is 'attrs', which is used with pbuffers which * we currently don't support. */ -- cgit v1.2.3