xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jun 8 07:28:25 UTC 2021


 glx/glxcmds.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit c468d34c7208c9041f9c077b54a00ae9cccad6a3
Author: Olivier Fourdan <ofourdan at redhat.com>
Date:   Thu Jun 3 17:51:01 2021 +0200

    glx: Set ContextTag for all contexts
    
    Currently, xorgGlxMakeCurrent() would set the context tag only for
    indirect GLX contexts.
    
    However, several other places expect to find a context for the tag or
    they would raise a GLXBadContextTag error, such as WaitGL() or WaitX().
    
    Set the context tag for direct contexts as well, to avoid raising an
    error and possibly killing the client.
    
    Thanks to Erik Kurzinger <ekurzinger at nvidia.com> for spotting the issue.
    
    Signed-off-by: Olivier Fourdan <ofourdan at redhat.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>

diff --git a/glx/glxcmds.c b/glx/glxcmds.c
index 2f69c794a..3f1bb9a71 100644
--- a/glx/glxcmds.c
+++ b/glx/glxcmds.c
@@ -664,9 +664,10 @@ xorgGlxMakeCurrent(ClientPtr client, GLXContextTag tag, XID drawId, XID readId,
         }
 
         glxc->currentClient = client;
-        glxServer.setContextTagPrivate(client, newContextTag, glxc);
     }
 
+    glxServer.setContextTagPrivate(client, newContextTag, glxc);
+
     if (prevglxc) {
         prevglxc->currentClient = NULL;
         if (!prevglxc->idExists) {


More information about the xorg-commit mailing list