After losing context due to too many contexts, getError() does not return CONTEXT_LOST_WEBGL
<rdar://problem/89550905>
Created attachment 454999 [details] Patch
Created attachment 455371 [details] Patch
Created attachment 455373 [details] Patch
Comment on attachment 455373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=455373&action=review Seems fine given that the tests progress. If it's possible to add more WebGL conformance tests covering this area, please do. r+ > Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:7754 > + ASSERT_NOT_REACHED(); Just checking - this assert is not hit if the WEBGL_lose_context extension is used incorrectly? (restoreContext() is called, but preventDefault() wasn't called against the lost context event?) I assume that WEBGL_lose_context's validation will catch this misuse - and that the EWS bots are running enough WebGL conformance tests using the WEBGL_lose_context extension.
Comment on attachment 455373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=455373&action=review thanks fro spending the time! > Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:6489 > return; this should prevent the case of calling lose_context.restoreContext() without preventDefault() >> Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:7754 >> + ASSERT_NOT_REACHED(); > > Just checking - this assert is not hit if the WEBGL_lose_context extension is used incorrectly? (restoreContext() is called, but preventDefault() wasn't called against the lost context event?) I assume that WEBGL_lose_context's validation will catch this misuse - and that the EWS bots are running enough WebGL conformance tests using the WEBGL_lose_context extension. Yeah, that's the intention. E.g. the timer invocation to call maybeRestoreContext should always be prefixed with the check "restoreRequested". Your question should be handled above..
Committed r291749 (248781@main): <https://commits.webkit.org/248781@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 455373 [details].