dri2: Check for dummyContext to see if the glx_context is valid
authorEgbert Eich <eich@suse.com>
Thu, 21 Apr 2016 13:02:53 +0000 (15:02 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Wed, 27 Apr 2016 12:03:11 +0000 (13:03 +0100)
According to the comments in src/glx/glxcurrent.c __glXGetCurrentContext()
always returns a valid pointer. If no context is made current, it will
contain dummyContext. Thus a test for NULL will always fail.

https://bugzilla.opensuse.org/show_bug.cgi?id=962609

Tested-by: Olaf Hering <ohering@suse.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
src/glx/dri2_glx.c

index 5c5630dbb4d4a49c0dc6bfdeb2ed2a5468b70115..af388d97d3184997b26a766e66a50c1a545388c4 100644 (file)
@@ -514,7 +514,7 @@ dri2GetCurrentContext()
    struct glx_context *gc = __glXGetCurrentContext();
    struct dri2_context *dri2Ctx = (struct dri2_context *)gc;
 
-   return dri2Ctx ? dri2Ctx->driContext : NULL;
+   return (gc != &dummyContext) ? dri2Ctx->driContext : NULL;
 }
 
 /**