summaryrefslogtreecommitdiff
path: root/glx
diff options
context:
space:
mode:
Diffstat (limited to 'glx')
-rw-r--r--glx/glxcmds.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/glx/glxcmds.c b/glx/glxcmds.c
index 189b5d913..1e2061d89 100644
--- a/glx/glxcmds.c
+++ b/glx/glxcmds.c
@@ -284,6 +284,15 @@ DoCreateContext(__GLXclientState * cl, GLXContextID gcId,
*/
isDirect = GL_FALSE;
}
+
+ /* Core GLX doesn't explicitly require this, but GLX_ARB_create_context
+ * does (see glx/createcontext.c), and it's assumed by our
+ * implementation anyway, so let's be consistent about it.
+ */
+ if (shareglxc->pGlxScreen != pGlxScreen) {
+ client->errorValue = shareglxc->pGlxScreen->pScreen->myNum;
+ return BadMatch;
+ }
}
/*