Title: [121295] trunk/Source/WebCore
Revision
121295
Author
[email protected]
Date
2012-06-26 16:02:00 -0700 (Tue, 26 Jun 2012)

Log Message

[v8] Clean up generated Dictionary-handling code
https://bugs.webkit.org/show_bug.cgi?id=89994

Reviewed by Adam Barth.

No change in behavior, so no new tests.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateParametersCheck):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::optionsObjectCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (121294 => 121295)


--- trunk/Source/WebCore/ChangeLog	2012-06-26 23:00:43 UTC (rev 121294)
+++ trunk/Source/WebCore/ChangeLog	2012-06-26 23:02:00 UTC (rev 121295)
@@ -1,3 +1,17 @@
+2012-06-26  Adam Klein  <[email protected]>
+
+        [v8] Clean up generated Dictionary-handling code
+        https://bugs.webkit.org/show_bug.cgi?id=89994
+
+        Reviewed by Adam Barth.
+
+        No change in behavior, so no new tests.
+
+        * bindings/scripts/CodeGeneratorV8.pm:
+        (GenerateParametersCheck):
+        * bindings/scripts/test/V8/V8TestObj.cpp:
+        (WebCore::TestObjV8Internal::optionsObjectCallback):
+
 2012-06-26  Raymond Toy  <[email protected]>
 
         Include stdio.h when DEBUG_AUDIONODE_REFERENCES is set

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm (121294 => 121295)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm	2012-06-26 23:00:43 UTC (rev 121294)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm	2012-06-26 23:02:00 UTC (rev 121295)
@@ -1724,13 +1724,8 @@
             $parameterCheckString .= "    EXCEPTION_BLOCK($nativeType, $parameterName, " .
                  JSValueToNative($parameter, "MAYBE_MISSING_PARAMETER(args, $paramIndex, $parameterDefaultPolicy)", "args.GetIsolate()") . ");\n";
             if ($nativeType eq 'Dictionary') {
-               $parameterCheckString .= "    if (args.Length() > $paramIndex && !$parameterName.isUndefinedOrNull() && !$parameterName.isObject()) {\n";
-               if (@{$function->raisesExceptions}) {
-                   $parameterCheckString .= "        ec = TYPE_MISMATCH_ERR;\n";
-                   $parameterCheckString .= "        V8Proxy::setDOMException(ec, args.GetIsolate());\n";
-               }
-               $parameterCheckString .= "        return V8Proxy::throwTypeError(\"Not an object.\");\n";
-               $parameterCheckString .= "    }\n";
+               $parameterCheckString .= "    if (!$parameterName.isUndefinedOrNull() && !$parameterName.isObject())\n";
+               $parameterCheckString .= "        return V8Proxy::throwTypeError(\"Not an object.\", args.GetIsolate());\n";
             }
         }
 

Modified: trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp (121294 => 121295)


--- trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp	2012-06-26 23:00:43 UTC (rev 121294)
+++ trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp	2012-06-26 23:02:00 UTC (rev 121295)
@@ -1150,17 +1150,15 @@
         return V8Proxy::throwNotEnoughArgumentsError(args.GetIsolate());
     TestObj* imp = V8TestObj::toNative(args.Holder());
     EXCEPTION_BLOCK(Dictionary, oo, MAYBE_MISSING_PARAMETER(args, 0, DefaultIsUndefined));
-    if (args.Length() > 0 && !oo.isUndefinedOrNull() && !oo.isObject()) {
-        return V8Proxy::throwTypeError("Not an object.");
-    }
+    if (!oo.isUndefinedOrNull() && !oo.isObject())
+        return V8Proxy::throwTypeError("Not an object.", args.GetIsolate());
     if (args.Length() <= 1) {
         imp->optionsObject(oo);
         return v8::Handle<v8::Value>();
     }
     EXCEPTION_BLOCK(Dictionary, ooo, MAYBE_MISSING_PARAMETER(args, 1, DefaultIsUndefined));
-    if (args.Length() > 1 && !ooo.isUndefinedOrNull() && !ooo.isObject()) {
-        return V8Proxy::throwTypeError("Not an object.");
-    }
+    if (!ooo.isUndefinedOrNull() && !ooo.isObject())
+        return V8Proxy::throwTypeError("Not an object.", args.GetIsolate());
     imp->optionsObject(oo, ooo);
     return v8::Handle<v8::Value>();
 }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to