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.
Created attachment 58319 [details] patch
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)".
Created attachment 58424 [details] revised patch Changed 0 to null in the test.
Comment on attachment 58424 [details] revised patch Looks good.
Comment on attachment 58424 [details] revised patch Energize.
Comment on attachment 58424 [details] revised patch Clearing flags on attachment: 58424 Committed r61018: <http://trac.webkit.org/changeset/61018>
All reviewed patches have been landed. Closing bug.