Issue #6791: Allow more array types in bufferData and bufferSubData.

This commit is contained in:
Simon Martin 2015-12-04 23:23:17 +01:00
parent 2cfcc26d9e
commit fa555d0e2e
4 changed files with 55 additions and 9 deletions

View file

@ -5787,6 +5787,12 @@
"url": "/_mozilla/mozilla/variadic-interface.html"
}
],
"mozilla/webgl/bufferData.html": [
{
"path": "mozilla/webgl/bufferData.html",
"url": "/_mozilla/mozilla/webgl/bufferData.html"
}
],
"mozilla/webgl/context_creation_error.html": [
{
"path": "mozilla/webgl/context_creation_error.html",

View file

@ -0,0 +1,44 @@
<!doctype html>
<meta charset="utf-8">
<title>bufferData and bufferSubData input array type check (issue #6791)</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
test(function() {
var gl = document.createElement("canvas").getContext("webgl");
var texture_buffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, texture_buffer);
var coordI8 = new Int8Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordI8, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordI8);
var coordU8 = new Uint8Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordU8, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordU8);
var coordI16 = new Int16Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordI16, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordI16);
var coordU16 = new Uint16Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordU16, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordU16);
var coordI32 = new Int32Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordI32, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordI32);
var coordU32 = new Uint32Array([ 1, 0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordU32, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordU32);
var coordF32 = new Float32Array([ 1.0, 0.0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordF32, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordF32);
var coordF64 = new Float64Array([ 1.0, 0.0 ]);
gl.bufferData(gl.ARRAY_BUFFER, coordF64, gl.STATIC_DRAW);
gl.bufferSubData(gl.ARRAY_BUFFER, 1, coordF64);
});
</script>