I am not sure this is true across the board, in many places we set the exception code to TYPE_MISMATCH_ERR on null input in the implementation (the first one I looked at was CanvasRenderingContext2D::drawImage). Can you go into more detail about why the WebGL bindings need to be more strict than the rest of the codebase?
-Sam On Wed, Aug 11, 2010 at 7:06 PM, Mo, Zhenyao <[email protected]> wrote: > Currently for a function's signature in WebKit, if an argument's type > is a wrapper type (those JS objec ts that wrap c++ objects, for > example, JSWebGLProgram, JSCSSRule, etc.) and if the input object's > type does not match the signature, the input is casted to null and no > TypeError is raised. > > Even though WebKit doesn't use Web IDL specially, I think we can look > to the Web IDL spec for guidance on what the behavior should be. > According to Web IDL spec (http://dev.w3.org/2006/webapi/WebIDL/), > unless [AllowAny] is put in the signature, an TypeError should be > raised if an argument type does not match its signature. The new > automatic code generation for overloaded functions in WebKit DOES > raise TypeError when it fails to determine which overloaded variant to > call. > > We definitely need to do the strict type checking for WebGL functions. > However, changing the default behavior of the IDL code generators > might have a significant compatibility impact. It isn't clear to us > whether the current behavior is intentional. If yes, please let us > know and we will try to fix the WebGL part only. Otherwise we will > modify the general rule instead. > _______________________________________________ > webkit-dev mailing list > [email protected] > http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev >
_______________________________________________ webkit-dev mailing list [email protected] http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

