RESOLVED FIXED 38707
uniform* entry points must ignore the call if a null WebGLUniformLocation is passed
https://bugs.webkit.org/show_bug.cgi?id=38707
Summary uniform* entry points must ignore the call if a null WebGLUniformLocation is ...
Kenneth Russell
Reported 2010-05-06 17:37:57 PDT
Per a recent WebGL spec update motivated by Gregg Tavares, passing a null WebGLUniformLocation to the uniform* entry points should cause the call to be silently ignored rather than generating an OpenGL error. This is the behavior of the underlying OpenGL implementation when a -1 location is passed to glUniform*, and is motivated by application frameworks which look up a bunch of uniforms, where some might not exist in a particular program or might have been optimized away by the GLSL compiler.
Attachments
patch (21.96 KB, patch)
2010-06-09 18:17 PDT, Zhenyao Mo
no flags
revised patch (21.97 KB, patch)
2010-06-10 17:41 PDT, Zhenyao Mo
no flags
Zhenyao Mo
Comment 1 2010-06-09 18:17:01 PDT
Kenneth Russell
Comment 2 2010-06-10 17:14:22 PDT
Comment on attachment 58319 [details] patch Looks good. One minor comment about one of the tests. LayoutTests/fast/canvas/webgl/script-tests/uniform-location.js:23 + shouldBeUndefined("contextA.uniformMatrix4fv(0, false, mat)"); For correctness we should change this to "contextA.uniformMatrix4fv(null, false, mat)".
Zhenyao Mo
Comment 3 2010-06-10 17:41:37 PDT
Created attachment 58424 [details] revised patch Changed 0 to null in the test.
Kenneth Russell
Comment 4 2010-06-10 17:48:20 PDT
Comment on attachment 58424 [details] revised patch Looks good.
Dimitri Glazkov (Google)
Comment 5 2010-06-10 21:38:16 PDT
Comment on attachment 58424 [details] revised patch Energize.
WebKit Commit Bot
Comment 6 2010-06-11 07:50:40 PDT
Comment on attachment 58424 [details] revised patch Clearing flags on attachment: 58424 Committed r61018: <http://trac.webkit.org/changeset/61018>
WebKit Commit Bot
Comment 7 2010-06-11 07:50:45 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.