diff options
author | Bernard Kilarski <bernard.r.kilarski@intel.com> | 2016-06-07 13:33:33 +0300 |
---|---|---|
committer | Tapani Pälli <tapani.palli@intel.com> | 2016-08-15 09:24:10 +0300 |
commit | 2e3f067458e4a70da91b27fab61ef3d292ded4cf (patch) | |
tree | 2c281b1bc75c9b14ae64c672e9c2aa26298577c9 /src/glx/tests | |
parent | 312ece9cd773553a8a45a5d81edc7c09032ff4f1 (diff) | |
download | external_mesa3d-2e3f067458e4a70da91b27fab61ef3d292ded4cf.zip external_mesa3d-2e3f067458e4a70da91b27fab61ef3d292ded4cf.tar.gz external_mesa3d-2e3f067458e4a70da91b27fab61ef3d292ded4cf.tar.bz2 |
glx: fix error code when there is no context bound
v2: change all related NULL checks to check against dummyContext
v3: really check for dummyContext *only* when ctx was from
__glXGetCurrentContext
v4: cover more checks, add dummyBuffer, dummyVtable (Emil)
Signed-off-by: Bernard Kilarski <bernard.r.kilarski@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Cc: "11.2" <mesa-stable@lists.freedesktop.org>
Diffstat (limited to 'src/glx/tests')
-rw-r--r-- | src/glx/tests/fake_glx_screen.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/glx/tests/fake_glx_screen.cpp b/src/glx/tests/fake_glx_screen.cpp index db20749..801f54a 100644 --- a/src/glx/tests/fake_glx_screen.cpp +++ b/src/glx/tests/fake_glx_screen.cpp @@ -75,7 +75,20 @@ indirect_create_context_attribs(struct glx_screen *base, return indirect_create_context(base, config_base, shareList, 0); } -__thread void *__glX_tls_Context = NULL; +/* This is necessary so that we don't have to link with glxcurrent.c + * which would require us to link with X libraries and what not. + */ +GLubyte dummyBuffer[__GLX_BUFFER_LIMIT_SIZE]; +struct glx_context_vtable dummyVtable; +struct glx_context dummyContext = { + &dummyBuffer[0], + &dummyBuffer[0], + &dummyBuffer[0], + &dummyBuffer[__GLX_BUFFER_LIMIT_SIZE], + sizeof(dummyBuffer), + &dummyVtable +}; +__thread void *__glX_tls_Context = &dummyContext; #if !defined(GLX_USE_TLS) extern "C" struct glx_context * |