Currently, the fast-path for copying the video texture for the WebGL context assumes compatible contexts, but this isn't the case with ANGLE. This causes all sorts of weird behaviour and crashing. We need to disable this fast-path until we can replace it with a more suitable (dmabuf powered?) path.
Created attachment 451890 [details] Patch
Comment on attachment 451890 [details] Patch While understanding there are no new tests - are there any WebGL conformance tests run under LayoutTests/ that can be enabled with this patch? Aside from that - if you've tested this locally it seems fine to me to move forward the GTK / WPE ports with it. r+
Layoutests with video still crash for me with the patch, I have just tested it. Also it is probably a good idea to use UNUSED_PARAM to avoid all the warnings in the function.
I've got the backtrace of the crash and it seems a problem is that gstreamer is trying to use X? I've tested some demo with video and it works, so the crash in LayoutTests seems an extra problem with gstreamer integration.
I thought that the existing tests would be enough for this, but as alexg states, GStreamer is crashing elsewhere for him - I think it's worth landing this because it makes things usable in the browser, let's open two more bugs though; 1- Address the X-related GStreamer crash in LayoutTests 2- Add the dmabuf path to remove the software frame copy I'll update the patch with the unused parameter macros.
Created attachment 452000 [details] Patch
Committed r289884 (247322@main): <https://commits.webkit.org/247322@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 452000 [details].
<rdar://problem/89014156>