xserver: Branch 'master'
Adam Jackson
ajax at kemper.freedesktop.org
Mon Jul 31 15:00:41 UTC 2017
glx/createcontext.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
New commits:
commit db0dd06ddf47d5190f2349ed8b0e71caa9e8e1eb
Author: Adam Jackson <ajax at redhat.com>
Date: Thu Jul 27 16:02:33 2017 -0400
glx: Allow arbitrary context attributes for direct contexts
For direct contexts, most context attributes don't require any
particular awareness on the part of the server. Examples include
GLX_ARB_create_context_no_error and GLX_ARB_context_flush_control, where
all of the behavior change lives in the renderer; since that's on the
client side for a direct context, there's no reason for the X server to
validate the attribute.
The context attributes will still be validated on the client side, and
we still validate attributes for indirect contexts since the server
implementation might need to handle them. For example, the indirect
code might internally use ARB_context_flush_control for all contexts, in
which case it would need to manually emit glFlush when the client
switches between two indirect contexts that didn't request the no-flush
attribute.
Signed-off-by: Adam Jackson <ajax at redhat.com>
Reviewed-by: Eric Anholt <eric at anholt.net>
diff --git a/glx/createcontext.c b/glx/createcontext.c
index c8b36ebb0..068b35fa7 100644
--- a/glx/createcontext.c
+++ b/glx/createcontext.c
@@ -207,7 +207,9 @@ __glXDisp_CreateContextAttribsARB(__GLXclientState * cl, GLbyte * pc)
#endif
default:
- return BadValue;
+ if (!req->isDirect)
+ return BadValue;
+ break;
}
}
More information about the xorg-commit
mailing list