Bug 1444252 - Check if program is linked in GetActiveUniforms. - r=kvark
MozReview-Commit-ID: EBbgWlzdC3A
--- a/dom/canvas/WebGL2ContextUniforms.cpp
+++ b/dom/canvas/WebGL2ContextUniforms.cpp
@@ -167,16 +167,21 @@ WebGL2Context::GetActiveUniforms(JSConte
return;
if (!ValidateUniformEnum(this, pname, funcName))
return;
if (!ValidateObject("getActiveUniforms: program", program))
return;
+ if (!program.IsLinked()) {
+ ErrorInvalidOperation("%s: `program` must be linked.", funcName);
+ return;
+ }
+
const auto& numActiveUniforms = program.LinkInfo()->uniforms.size();
for (const auto& curIndex : uniformIndices) {
if (curIndex >= numActiveUniforms) {
ErrorInvalidValue("%s: Too-large active uniform index queried.", funcName);
return;
}
}