diff options
author | Tomasz Lis <[email protected]> | 2013-07-17 13:49:15 +0200 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2013-07-18 16:03:42 -0700 |
commit | a92cd5b2454c984d56f2f7d03fe64baf6d39be4c (patch) | |
tree | e2d1439b6c594cd92227b139ba847f0d384219fc /src/glx/dri_common.c | |
parent | 36259a16fe9b1ab60c7cb4fbf41077fb480a2bec (diff) |
glx: Retrieve the value of RENDER_TYPE from GLX attribs array
Make sure that context creation routines are provided with the value of
RENDER_TYPE retrieved from GLX attribs.
v2 (idr): Minor formatting changes. Change type of
dri2_convert_glx_attribs render_type parameter to uint32_t to silence
some GCC warnings.
Signed-off-by: Tomasz Lis <[email protected]>
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/glx/dri_common.c')
-rw-r--r-- | src/glx/dri_common.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/glx/dri_common.c b/src/glx/dri_common.c index 1bf20ec949d..32625e83d25 100644 --- a/src/glx/dri_common.c +++ b/src/glx/dri_common.c @@ -456,14 +456,13 @@ driReleaseDrawables(struct glx_context *gc) _X_HIDDEN bool dri2_convert_glx_attribs(unsigned num_attribs, const uint32_t *attribs, - unsigned *major_ver, unsigned *minor_ver, - uint32_t *flags, unsigned *api, int *reset, - unsigned *error) + unsigned *major_ver, unsigned *minor_ver, + uint32_t *render_type, uint32_t *flags, unsigned *api, + int *reset, unsigned *error) { unsigned i; bool got_profile = false; uint32_t profile; - int render_type = GLX_RGBA_TYPE; if (num_attribs == 0) { *api = __DRI_API_OPENGL; @@ -479,6 +478,7 @@ dri2_convert_glx_attribs(unsigned num_attribs, const uint32_t *attribs, *major_ver = 1; *minor_ver = 0; + *render_type = GLX_RGBA_TYPE; *reset = __DRI_CTX_RESET_NO_NOTIFICATION; for (i = 0; i < num_attribs; i++) { @@ -497,7 +497,7 @@ dri2_convert_glx_attribs(unsigned num_attribs, const uint32_t *attribs, got_profile = true; break; case GLX_RENDER_TYPE: - render_type = attribs[i * 2 + 1]; + *render_type = attribs[i * 2 + 1]; break; case GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB: switch (attribs[i * 2 + 1]) { @@ -568,7 +568,7 @@ dri2_convert_glx_attribs(unsigned num_attribs, const uint32_t *attribs, return false; } - if (*major_ver >= 3 && render_type == GLX_COLOR_INDEX_TYPE) { + if (*major_ver >= 3 && *render_type == GLX_COLOR_INDEX_TYPE) { *error = __DRI_CTX_ERROR_BAD_FLAG; return false; } |