Bug 268070
| Summary: | The usage of flat qualifier breaks the WebGL context in Safari | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Daniel Eke <endanke> |
| Component: | WebGL | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | ahmad.saleem792, dino, kbr, kkinnunen |
| Priority: | P2 | ||
| Version: | Other | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Daniel Eke
We have run into a regression regarding the usage of the "flat" storage qualifier in GLSL shaders, which causes the browser to lose the WebGL context across several tabs.
This breaks rendering of any further WebGL content and to recover, the browser needs to be force-closed and opened again.
The issue was reproducible in Safari on multiple iPad models (MK2K3KN/A and MQDW2TY/A) on one iPhone model (MT9G2ZD/A) and across different iOS versions (16.3.1 and 17.3).
On desktop environment we were unable to reproduce it.
The exact conditions are not clear, as the browser can render some frames before it loses the context, but usually it happens within a couple of seconds.
As a minimal example, we've set the following property in a vertex shader:
flat out float v_test;
...
v_test = 1.0;
And accessed it in the fragment shader similar to:
flat in float v_test;
...
float alpha = v_test;
glFragColor = vec4(1.0, 1.0, 1.0, alpha);
The repeated usage of these shaders breaks the context in a couple of seconds.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Ahmad Saleem
*** Bug 268071 has been marked as a duplicate of this bug. ***
Ahmad Saleem
*** This bug has been marked as a duplicate of bug 268071 ***