aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/script/dom/webglrenderingcontext.rs8
-rw-r--r--tests/wpt/metadata/webgl/conformance-1.0.3/conformance/rendering/gl-drawelements.html.ini3
2 files changed, 5 insertions, 6 deletions
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs
index 4db5654d738..059c6941bc1 100644
--- a/components/script/dom/webglrenderingcontext.rs
+++ b/components/script/dom/webglrenderingcontext.rs
@@ -1165,10 +1165,12 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext {
// https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.11
fn DrawElements(&self, mode: u32, count: i32, type_: u32, offset: i64) {
+ // From the GLES 2.0.25 spec, page 21:
+ //
+ // "type must be one of UNSIGNED_BYTE or UNSIGNED_SHORT"
let type_size = match type_ {
- constants::BYTE | constants::UNSIGNED_BYTE => 1,
- constants::SHORT | constants::UNSIGNED_SHORT => 2,
- constants::INT | constants::UNSIGNED_INT | constants::FLOAT => 4,
+ constants::UNSIGNED_BYTE => 1,
+ constants::UNSIGNED_SHORT => 2,
_ => return self.webgl_error(InvalidEnum),
};
diff --git a/tests/wpt/metadata/webgl/conformance-1.0.3/conformance/rendering/gl-drawelements.html.ini b/tests/wpt/metadata/webgl/conformance-1.0.3/conformance/rendering/gl-drawelements.html.ini
deleted file mode 100644
index fbdf4eaeed8..00000000000
--- a/tests/wpt/metadata/webgl/conformance-1.0.3/conformance/rendering/gl-drawelements.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[gl-drawelements.html]
- type: testharness
- expected: CRASH