content/canvas/crashtests/421715-1.html

Thu, 15 Jan 2015 21:03:48 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 21:03:48 +0100
branch
TOR_BUG_9701
changeset 11
deefc01c0e14
permissions
-rw-r--r--

Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)

michael@0 1 <!DOCTYPE html>
michael@0 2 <html>
michael@0 3 <head>
michael@0 4 <script type="text/javascript">
michael@0 5 function stringify(a) {
michael@0 6 if (a)
michael@0 7 return a.toSource();
michael@0 8 return ''+a;
michael@0 9 }
michael@0 10 var args = [undefined, null, [], {}, 0, "0"];
michael@0 11 var stringArgs = args.map(stringify);
michael@0 12
michael@0 13 function test_method(context, method, arity) {
michael@0 14 function testParams(existingParams, depth) {
michael@0 15 for (var arg of stringArgs) {
michael@0 16 var code = "context[method](" + existingParams + arg + ")";
michael@0 17 try {
michael@0 18 eval(code);
michael@0 19 } catch (ex) {
michael@0 20 // Exceptions are expected
michael@0 21 }
michael@0 22
michael@0 23 if (depth < arity)
michael@0 24 testParams(existingParams + arg + ",", depth + 1);
michael@0 25 }
michael@0 26 }
michael@0 27 testParams("", 1);
michael@0 28 }
michael@0 29
michael@0 30 function startTest() {
michael@0 31 var canvas = document.getElementById("img");
michael@0 32 var context = canvas.getContext('2d');;
michael@0 33 test_method(context, "getImageData", 4);
michael@0 34 test_method(context, "putImageData", 3);
michael@0 35 }
michael@0 36 </script>
michael@0 37 </head>
michael@0 38 <body onload="startTest()">
michael@0 39 <canvas id="img">No canvas support.</canvas>
michael@0 40 </body>
michael@0 41 </html>

mercurial