Revert "glx/dri: Fix DRI drawable release at MakeCurrent time"

This reverts commit 31b04e420b which
is also breaking KDE in some ways.

Fixes: #7674
Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Acked-by: Tapani Pälli <tapani.palli@intel.com>
Acked-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19972>
This commit is contained in:
Martin Roukala (né Peres)
2022-11-24 11:55:45 +02:00
committed by Marge Bot
parent 0cee008fee
commit ea3f73ba85
5 changed files with 5 additions and 5 deletions

View File

@@ -121,7 +121,7 @@ dri2_bind_context(struct glx_context *context, struct glx_context *old,
pdraw = (struct dri2_drawable *) driFetchDrawable(context, draw);
pread = (struct dri2_drawable *) driFetchDrawable(context, read);
driReleaseDrawables(old);
driReleaseDrawables(context);
if (pdraw)
dri_draw = pdraw->driDrawable;

View File

@@ -192,7 +192,7 @@ dri3_bind_context(struct glx_context *context, struct glx_context *old,
pdraw = (struct dri3_drawable *) driFetchDrawable(context, draw);
pread = (struct dri3_drawable *) driFetchDrawable(context, read);
driReleaseDrawables(old);
driReleaseDrawables(context);
if (pdraw)
dri_draw = pdraw->loader_drawable.dri_drawable;

View File

@@ -490,7 +490,7 @@ releaseDrawable(const struct glx_display *priv, GLXDrawable drawable)
_X_HIDDEN void
driReleaseDrawables(struct glx_context *gc)
{
const struct glx_display *priv = (gc && gc->psc) ? gc->psc->display : NULL;
const struct glx_display *priv = gc->psc->display;
if (priv == NULL)
return;

View File

@@ -440,7 +440,7 @@ drisw_bind_context(struct glx_context *context, struct glx_context *old,
pdraw = (struct drisw_drawable *) driFetchDrawable(context, draw);
pread = (struct drisw_drawable *) driFetchDrawable(context, read);
driReleaseDrawables(old);
driReleaseDrawables(context);
if (!psc->core->bindContext(context->driContext,
pdraw ? pdraw->driDrawable : NULL,

View File

@@ -88,7 +88,7 @@ driwindows_bind_context(struct glx_context *context, struct glx_context *old,
pdraw = (struct driwindows_drawable *) driFetchDrawable(context, draw);
pread = (struct driwindows_drawable *) driFetchDrawable(context, read);
driReleaseDrawables(old);
driReleaseDrawables(&pcp->base);
if (pdraw == NULL || pread == NULL)
return GLXBadDrawable;