Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Uniform buffer reuse causes flush, creates invalid state
https://bugs.webkit.org/show_bug.cgi?id=240896 Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-05-26 Patch by Kyle Piddington. Reviewed by Kimmo Kinnunen. A flush during draw setup would leave the render command encoder not started and render pipeline unset. This would assert in debug and leak memory with corrupted draws in release. This would happen for example when uniform buffer pool would run out of uniform memory. If the pool is maxed out, we flush the existing rendering to obtain free buffers. After the flush, we need to re-run the setup. Test is tracked in bug 240948. * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ContextMtl.mm: (rx::ContextMtl::setupDraw): (rx::ContextMtl::setupDrawImpl): Canonical link: https://commits.webkit.org/251007@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294877 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- Loading branch information