Signed-off-by: Niels Thykier <[email protected]>
---
glx/glxdri.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/glx/glxdri.c b/glx/glxdri.c
index a5d87ec..57549af 100644
--- a/glx/glxdri.c
+++ b/glx/glxdri.c
@@ -645,8 +645,10 @@ __glXDRIscreenCreateContext(__GLXscreen * baseScreen,
for (i = 0; i < pScreen->numVisuals; i++, visual++)
if (visual->vid == glxConfig->visualID)
break;
- if (i == pScreen->numVisuals)
+ if (i == pScreen->numVisuals) {
+ free(context);
return NULL;
+ }
context->hwContextID = FakeClientID(0);
@@ -655,8 +657,10 @@ __glXDRIscreenCreateContext(__GLXscreen * baseScreen,
context->hwContextID, &hwContext);
__glXleaveServer(GL_FALSE);
- if (!retval)
+ if (!retval) {
+ free(context);
return NULL;
+ }
context->driContext = screen->legacy->createNewContext(screen->driScreen,
config->driConfig, 0, /* render type */
driShare,
--
1.7.10.4
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel