SHA256
1
0
forked from pool/Mesa
Mesa/n_drisw-Do-not-use-drisw_put_image_shm.patch
Stefan Dirsch b2594f23bf Accepting request 649270 from home:michalsrb:bug1113533:X11:XOrg
- n_drisw-Do-not-use-drisw_put_image_shm.patch
  * Workaround for applications that create GL context twice with
    different loaders. (boo#1113533)

OBS-URL: https://build.opensuse.org/request/show/649270
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=779
2018-11-15 13:19:54 +00:00

45 lines
1.6 KiB
Diff

From 44e72286f76d244f6f2acf2cbf7204b6d7377be8 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@suse.com>
Date: Tue, 13 Nov 2018 09:31:53 +0100
Subject: [PATCH] drisw: Do not use drisw_put_image_shm
The put_image_shm is temporarily disabled to workaround crashes in
applications that create two software-rendering OpenGL contexts, each
time using different version of loader. This caused crashes because the
drisw_lf variable is shared between them.
https://bugzilla.opensuse.org/show_bug.cgi?id=1113533
---
src/gallium/state_trackers/dri/drisw.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/gallium/state_trackers/dri/drisw.c b/src/gallium/state_trackers/dri/drisw.c
index 886f94dc02..62ced60e92 100644
--- a/src/gallium/state_trackers/dri/drisw.c
+++ b/src/gallium/state_trackers/dri/drisw.c
@@ -446,10 +446,21 @@ drisw_init_screen(__DRIscreen * sPriv)
sPriv->driverPrivate = (void *)screen;
sPriv->extensions = drisw_screen_extensions;
+
+ /* The put_image_shm is temporarily disabled to workaround crashes in
+ * applications that create two software-rendering OpenGL contexts, each
+ * time using different version of loader. This caused crashes because the
+ * drisw_lf variable is shared between them.
+ *
+ * https://bugzilla.opensuse.org/show_bug.cgi?id=1113533
+ *
+ */
+#if 0
if (loader->base.version >= 4) {
if (loader->putImageShm)
drisw_lf.put_image_shm = drisw_put_image_shm;
}
+#endif
if (pipe_loader_sw_probe_dri(&screen->dev, &drisw_lf)) {
dri_init_options(screen);
--
2.16.4