Changeset 294892 in webkit
- Timestamp:
- May 26, 2022, 1:06:56 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-7614.1.14.1-branch/Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ContextMtl.mm
r293513 r294892 2223 2223 bool xfbPass) 2224 2224 { 2225 ANGLE_TRY(setupDrawImpl(context, mode, firstVertex, vertexOrIndexCount, instances, 2226 indexTypeOrNone, indices, xfbPass)); 2227 if (!mRenderEncoder.valid()) 2228 { 2229 // Flush occurred during setup, due to running out of memory while setting up the render 2230 // pass state. This would happen for example when there is no more space in the uniform 2231 // buffers in the uniform buffer pool. The rendering would be flushed to free the uniform 2232 // buffer memory for new usage. In this case, re-run the setup. 2233 ANGLE_TRY(setupDrawImpl(context, mode, firstVertex, vertexOrIndexCount, instances, 2234 indexTypeOrNone, indices, xfbPass)); 2235 // Setup with flushed state should either produce a working encoder or fail with an error 2236 // result. 2237 ASSERT(mRenderEncoder.valid()); 2238 } 2239 return angle::Result::Continue; 2240 } 2241 2242 angle::Result ContextMtl::setupDrawImpl(const gl::Context *context, 2243 gl::PrimitiveMode mode, 2244 GLint firstVertex, 2245 GLsizei vertexOrIndexCount, 2246 GLsizei instances, 2247 gl::DrawElementsType indexTypeOrNone, 2248 const void *indices, 2249 bool xfbPass) 2250 { 2225 2251 ASSERT(mProgram); 2226 2252
Note:
See TracChangeset
for help on using the changeset viewer.