summaryrefslogtreecommitdiff
path: root/libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch')
-rw-r--r--libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch b/libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch
new file mode 100644
index 000000000..9c3bacd6a
--- /dev/null
+++ b/libre/mesa/0002-loader_dri3-Wait-for-pending-swaps-to-complete-before-drawable_fini.patch
@@ -0,0 +1,14 @@
+diff --git a/src/loader/loader_dri3_helper.c b/src/loader/loader_dri3_helper.c
+index 6bb11c4..7bd79af 100644
+--- a/src/loader/loader_dri3_helper.c
++++ b/src/loader/loader_dri3_helper.c
+@@ -234,6 +234,9 @@ loader_dri3_drawable_fini(struct loader_dri3_drawable *draw)
+ {
+ int i;
+
++ if (draw->special_event)
++ loader_dri3_swapbuffer_barrier(draw);
++
+ draw->ext->core->destroyDrawable(draw->dri_drawable);
+
+ for (i = 0; i < ARRAY_SIZE(draw->buffers); i++) {