Browse Source

chore: cherry-pick d49484c21e3c from angle (#34014)

Co-authored-by: Electron Bot <[email protected]>
Pedro Pontes 2 years ago
parent
commit
cdd6fc93b2
2 changed files with 34 additions and 0 deletions
  1. 1 0
      patches/angle/.patches
  2. 33 0
      patches/angle/cherry-pick-d49484c21e3c.patch

+ 1 - 0
patches/angle/.patches

@@ -14,5 +14,6 @@ m98_protect_against_deleting_a_current_xfb_buffer.patch
 m96-lts_vulkan_fix_issue_with_redefining_a_layered_attachment.patch
 cherry-pick-d27d9d059b51.patch
 m100_fix_crash_when_pausing_xfb_then_deleting_a_buffer.patch
+cherry-pick-d49484c21e3c.patch
 cherry-pick-a602a068e022.patch
 fix_checkednumeric_using_the_wrong_type.patch

+ 33 - 0
patches/angle/cherry-pick-d49484c21e3c.patch

@@ -0,0 +1,33 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jamie Madill <[email protected]>
+Date: Mon, 11 Apr 2022 12:29:00 -0400
+Subject: Add error check on resuming XFB with deleted buffer.
+
+Bug: chromium:1313905
+Change-Id: I22c6f6400b05ca32c922fba9a3b9d4b5841ca8b8
+Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3578378
+Auto-Submit: Jamie Madill <[email protected]>
+Reviewed-by: Geoff Lang <[email protected]>
+Commit-Queue: Jamie Madill <[email protected]>
+(cherry picked from commit 5c85fd4e11a3835a0719223a7cedb978d309da21)
+Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3594103
+Reviewed-by: Shahbaz Youssefi <[email protected]>
+
+diff --git a/src/libANGLE/validationES3.cpp b/src/libANGLE/validationES3.cpp
+index 1523cd5f0093b7b4b03bf0cd5432ee0a15f17dab..5f42d4b418fe6ae2f8c7473ef7a8954ef128ff99 100644
+--- a/src/libANGLE/validationES3.cpp
++++ b/src/libANGLE/validationES3.cpp
+@@ -4286,6 +4286,13 @@ bool ValidateUniformBlockBinding(const Context *context,
+         return false;
+     }
+ 
++    if (!ValidateProgramExecutableXFBBuffersPresent(context,
++                                                    context->getState().getProgramExecutable()))
++    {
++        context->validationError(GL_INVALID_OPERATION, kTransformFeedbackBufferMissing);
++        return false;
++    }
++
+     return true;
+ }
+