mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-20 16:58:36 +02:00
intel/dri: finish proper glthread
KWin was able to get NULL-context in the call intelUnbindContext. But a call _mesa_glthread_finish is not resistent to such case. Case can be catched with steps: 1. Create both glx and egl contexts 2. Make glx as current 3. Make egl as current 4. Reset glx context 5. Make egl as current Solution adds proper finishing of glthread-context (context will be taken from the requested dri-context for unbinding, but not from the saved current context). Piglit-test: https://gitlab.freedesktop.org/mesa/piglit/merge_requests/87 Cc: 19.1 19.2 <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110814 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111271 Fixes:dca36d5516(i965: Implement threaded GL support) Signed-off-by: Sergii Romantsov <sergii.romantsov@globallogic.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit1dce75c183)
This commit is contained in:
parent
5e72987777
commit
0e6ccd180c
1 changed files with 1 additions and 1 deletions
|
|
@ -1245,7 +1245,7 @@ intelDestroyContext(__DRIcontext * driContextPriv)
|
|||
GLboolean
|
||||
intelUnbindContext(__DRIcontext * driContextPriv)
|
||||
{
|
||||
GET_CURRENT_CONTEXT(ctx);
|
||||
struct gl_context *ctx = driContextPriv->driverPrivate;
|
||||
_mesa_glthread_finish(ctx);
|
||||
|
||||
/* Unset current context and dispath table */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue