Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:lafenghu
xorg-x11-server
u_0001-glx-Fix-mishandling-of-shared-contexts.p...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File u_0001-glx-Fix-mishandling-of-shared-contexts.patch of Package xorg-x11-server
From 277985e545626c9a9bd82aafddac4f935d95a4e2 Mon Sep 17 00:00:00 2001 From: Ian Romanick <ian.d.romanick@intel.com> Date: Mon, 5 Dec 2011 10:55:20 -0800 Subject: [PATCH 01/11] glx: Fix mishandling of shared contexts Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> --- glx/glxcmds.c | 22 +++++++++++----------- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/glx/glxcmds.c b/glx/glxcmds.c index 24fed8f..6fa10fe 100644 --- a/glx/glxcmds.c +++ b/glx/glxcmds.c @@ -251,20 +251,20 @@ DoCreateContext(__GLXclientState * cl, GLXContextID gcId, &shareglxc, &err)) return err; - if (shareglxc->isDirect) { - /* - ** NOTE: no support for sharing display lists between direct - ** contexts, even if they are in the same address space. - */ -#if 0 - /* Disabling this code seems to allow shared display lists - * and texture objects to work. We'll leave it disabled for now. - */ + /* Page 26 (page 32 of the PDF) of the GLX 1.4 spec says: + * + * "The server context state for all sharing contexts must exist + * in a single address space or a BadMatch error is generated." + * + * If the share context is indirect, force the new context to also be + * indirect. If the shard context is direct but the new context + * cannot be direct, generate BadMatch. + */ + if (shareglxc->isDirect && !isDirect) { client->errorValue = shareList; return BadMatch; -#endif } - else { + else if (!shareglxc->isDirect) { /* ** Create an indirect context regardless of what the client asked ** for; this way we can share display list space with shareList. -- 1.7.3.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor