XQuartz: GLX: Don't mangle __GLXDrawable's pDraw
We were incorrectly NULLing out pDraw in __GLXDrawable instead of ours in
__GLXAquaDrawable. (we should refactor to eliminate this redundancy later)
This was causing http://xquartz.macosforge.org/trac/ticket/426
This was benign until commit f0006aa58f
The root cause of this change was fed7ccc481ad1caaa518cafe944c2327a5d0b6c65
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
This commit is contained in:
parent
9c171d4aee
commit
98f90145d7
|
@ -271,8 +271,7 @@ static void __glXAquaContextDestroy(__GLXcontext *baseContext) {
|
||||||
|
|
||||||
__GLXAquaContext *context = (__GLXAquaContext *) baseContext;
|
__GLXAquaContext *context = (__GLXAquaContext *) baseContext;
|
||||||
|
|
||||||
GLAQUA_DEBUG_MSG("glAquaContextDestroy (ctx 0x%x)\n",
|
GLAQUA_DEBUG_MSG("glAquaContextDestroy (ctx %p)\n", baseContext);
|
||||||
(unsigned int) baseContext);
|
|
||||||
if (context != NULL) {
|
if (context != NULL) {
|
||||||
if (context->sid != 0 && surface_hash != NULL) {
|
if (context->sid != 0 && surface_hash != NULL) {
|
||||||
lst = x_hash_table_lookup(surface_hash, x_cvt_uint_to_vptr(context->sid), NULL);
|
lst = x_hash_table_lookup(surface_hash, x_cvt_uint_to_vptr(context->sid), NULL);
|
||||||
|
@ -321,7 +320,7 @@ static void surface_notify(void *_arg, void *data) {
|
||||||
case AppleDRISurfaceNotifyDestroyed:
|
case AppleDRISurfaceNotifyDestroyed:
|
||||||
if (surface_hash != NULL)
|
if (surface_hash != NULL)
|
||||||
x_hash_table_remove(surface_hash, x_cvt_uint_to_vptr(arg->id));
|
x_hash_table_remove(surface_hash, x_cvt_uint_to_vptr(arg->id));
|
||||||
draw->base.pDraw = NULL;
|
draw->pDraw = NULL;
|
||||||
draw->sid = 0;
|
draw->sid = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue