Changeset 70414 in webkit


Ignore:
Timestamp:
Oct 24, 2010 9:12:44 AM (13 years ago)
Author:
Nikolas Zimmermann
Message:

2010-10-24 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dimitri Glazkov.

Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
https://bugs.webkit.org/show_bug.cgi?id=48179

Fix WebGL tests. Accept 'boolean' as valid numeric type in StrictTypeChecking mode.

  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorV8.pm:

2010-10-24 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dimitri Glazkov.

Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
https://bugs.webkit.org/show_bug.cgi?id=48179

It turns out the CodeGenerator changes are right, and the webgl tests have a problem, since StrictTypeChecking was enabled for numeric types.
When calling gl.bindAttribLocation() be sure to pass the second argument as integer, not as string.
Fixes all failing webgl tests on the snow leopard bot.

  • fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html:
  • fast/canvas/webgl/resources/webgl-test-utils.js: (WebGLTestUtils):
  • fast/canvas/webgl/resources/webgl-test.js: (createProgram):
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r70410 r70414  
     12010-10-24  Nikolas Zimmermann  <nzimmermann@rim.com>
     2
     3        Reviewed by Dimitri Glazkov.
     4
     5        Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
     6        https://bugs.webkit.org/show_bug.cgi?id=48179
     7
     8        It turns out the CodeGenerator changes are right, and the webgl tests have a problem, since StrictTypeChecking was enabled for numeric types.
     9        When calling gl.bindAttribLocation() be sure to pass the second argument as integer, not as string.
     10        Fixes all failing webgl tests on the snow leopard bot.
     11
     12        * fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html:
     13        * fast/canvas/webgl/resources/webgl-test-utils.js:
     14        (WebGLTestUtils):
     15        * fast/canvas/webgl/resources/webgl-test.js:
     16        (createProgram):
     17
    1182010-10-23  Nikolas Zimmermann  <nzimmermann@rim.com>
    219
  • trunk/LayoutTests/fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html

    r69996 r70414  
    8080    var attribs = [ "pos", "colorIn" ];
    8181    for (var i in attribs)
    82         gl.bindAttribLocation(gl.program, i, attribs[i]);
     82        gl.bindAttribLocation(gl.program, parseInt(i), attribs[i]);
    8383
    8484    // Link the program
  • trunk/LayoutTests/fast/canvas/webgl/resources/webgl-test-utils.js

    r68806 r70414  
    569569  // Bind attributes
    570570  for (var i in attribs) {
    571     gl.bindAttribLocation (program, i, attribs[i]);
     571    gl.bindAttribLocation (program, parseInt(i), attribs[i]);
    572572  }
    573573
  • trunk/LayoutTests/fast/canvas/webgl/resources/webgl-test.js

    r66934 r70414  
    188188    if (attribs) {
    189189        for (var i in attribs) {
    190             gl.bindAttribLocation (prog, i, attribs[i]);
     190            gl.bindAttribLocation (prog, parseInt(i), attribs[i]);
    191191  }
    192192    }
  • trunk/WebCore/ChangeLog

    r70411 r70414  
     12010-10-24  Nikolas Zimmermann  <nzimmermann@rim.com>
     2
     3        Reviewed by Dimitri Glazkov.
     4
     5        Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly
     6        https://bugs.webkit.org/show_bug.cgi?id=48179
     7
     8        Fix WebGL tests. Accept 'boolean' as valid numeric type in StrictTypeChecking mode.
     9
     10        * bindings/scripts/CodeGeneratorJS.pm:
     11        * bindings/scripts/CodeGeneratorV8.pm:
     12
    1132010-10-24  Nikolas Zimmermann  <nzimmermann@rim.com>
    214
  • trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r70411 r70414  
    18231823                                    push(@implContent, "    };\n");
    18241824                                } elsif ($codeGenerator->IsNumericType($argType)) {
    1825                                     push(@implContent, "    if (!value.isUndefinedOrNull() && !value.isNumber()) {\n");
     1825                                    push(@implContent, "    if (!value.isUndefinedOrNull() && !value.isNumber() && !value.isBoolean()) {\n");
    18261826                                    push(@implContent, "        throwVMTypeError(exec);\n");
    18271827                                    push(@implContent, "        return;\n");
     
    20862086                                    push(@implContent, "        return throwVMTypeError(exec);\n");
    20872087                                } elsif ($codeGenerator->IsNumericType($argType)) {
    2088                                     push(@implContent, "    if (exec->argumentCount() > $argsIndex && !${argValue}.isUndefinedOrNull() && !${argValue}.isNumber())\n");
     2088                                    push(@implContent, "    if (exec->argumentCount() > $argsIndex && !${argValue}.isUndefinedOrNull() && !${argValue}.isNumber() && !${argValue}.isBoolean())\n");
    20892089                                    push(@implContent, "        return throwVMTypeError(exec);\n");
    20902090                                }
  • trunk/WebCore/bindings/scripts/CodeGeneratorV8.pm

    r70411 r70414  
    954954            push(@implContentDecls, "    }\n");
    955955        } elsif ($codeGenerator->IsNumericType($argType)) {
    956             push(@implContentDecls, "    if (!isUndefinedOrNull(value) && !value->IsNumber()) {\n");
     956            push(@implContentDecls, "    if (!isUndefinedOrNull(value) && !value->IsNumber() && !value->IsBoolean()) {\n");
    957957            push(@implContentDecls, "        V8Proxy::throwTypeError();\n");
    958958            push(@implContentDecls, "        return;\n");
     
    14181418                    push(@implContentDecls, "    }\n");
    14191419                } elsif ($codeGenerator->IsNumericType($argType)) {
    1420                     push(@implContentDecls, "    if (args.Length() > $paramIndex && !isUndefinedOrNull($argValue) && !${argValue}->IsNumber()) {\n");
     1420                    push(@implContentDecls, "    if (args.Length() > $paramIndex && !isUndefinedOrNull($argValue) && !${argValue}->IsNumber() && !${argValue}->IsBoolean()) {\n");
    14211421                    push(@implContentDecls, "        V8Proxy::throwTypeError();\n");
    14221422                    push(@implContentDecls, "        return notHandledByInterceptor();\n");
Note: See TracChangeset for help on using the changeset viewer.