webgl: Return TEXTURE_IMMUTABLE_FORMAT as a boolean; don't panic on macOS for TEXTURE_IMMUTABLE_LEVELS.

This commit is contained in:
Josh Matthews 2020-04-29 14:29:53 -04:00
parent 3876d6dbdd
commit 9ce84d94de
5 changed files with 47 additions and 6 deletions

View file

@ -2236,6 +2236,15 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext {
self.webgl_error(InvalidEnum);
return NullValue();
}
if let Some(value) = texture.maybe_get_tex_parameter(texparam) {
match value {
TexParameterValue::Float(v) => return DoubleValue(v as f64),
TexParameterValue::Int(v) => return Int32Value(v),
TexParameterValue::Bool(v) => return BooleanValue(v),
}
}
match texparam {
TexParameter::Float(param) => {
let (sender, receiver) = webgl_channel().unwrap();
@ -2247,6 +2256,11 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext {
self.send_command(WebGLCommand::GetTexParameterInt(target, param, sender));
Int32Value(receiver.recv().unwrap())
},
TexParameter::Bool(param) => {
let (sender, receiver) = webgl_channel().unwrap();
self.send_command(WebGLCommand::GetTexParameterBool(target, param, sender));
BooleanValue(receiver.recv().unwrap())
},
}
}