Fix context sharing between direct/indirect contexts

This commit is contained in:
Alan Hourihane 2008-02-27 16:49:34 +00:00
parent dcc3de91d2
commit 817b20030b

View file

@ -472,6 +472,9 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
else
sharePrivate = NULL;
if (baseShareContext && baseShareContext->isDirect)
return NULL;
context = xalloc(sizeof *context);
if (context == NULL)
return NULL;
@ -490,6 +493,11 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
0, /* render type */
sharePrivate,
&context->driContext);
if (!context->driContext.private) {
xfree(context);
return NULL;
}
context->driContext.mode = modes;
@ -815,7 +823,6 @@ static Bool
glxDRIEnterVT (int index, int flags)
{
__GLXDRIscreen *screen = (__GLXDRIscreen *) __glXgetActiveScreen(index);
Bool ret;
LogMessage(X_INFO, "AIGLX: Resuming AIGLX clients after VT switch\n");