Title: [141518] trunk/Source/WebCore
Revision
141518
Author
hara...@chromium.org
Date
2013-01-31 17:57:36 -0800 (Thu, 31 Jan 2013)

Log Message

Unreviewed, rolling out r141502.
http://trac.webkit.org/changeset/141502
https://bugs.webkit.org/show_bug.cgi?id=108441

Hit assert in SVGElementInstance

* bindings/scripts/CodeGeneratorV8.pm:
(GetInternalFields):
* dom/EventTarget.idl:
* svg/SVGElementInstance.idl:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (141517 => 141518)


--- trunk/Source/WebCore/ChangeLog	2013-02-01 01:48:20 UTC (rev 141517)
+++ trunk/Source/WebCore/ChangeLog	2013-02-01 01:57:36 UTC (rev 141518)
@@ -1,3 +1,16 @@
+2013-01-31  Kentaro Hara  <hara...@chromium.org>
+
+        Unreviewed, rolling out r141502.
+        http://trac.webkit.org/changeset/141502
+        https://bugs.webkit.org/show_bug.cgi?id=108441
+
+        Hit assert in SVGElementInstance
+
+        * bindings/scripts/CodeGeneratorV8.pm:
+        (GetInternalFields):
+        * dom/EventTarget.idl:
+        * svg/SVGElementInstance.idl:
+
 2013-01-31  Ojan Vafai  <o...@chromium.org>
 
         Assert that computePreferredLogicalWidths never calls setNeedsLayout

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm (141517 => 141518)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm	2013-02-01 01:48:20 UTC (rev 141517)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm	2013-02-01 01:57:36 UTC (rev 141518)
@@ -616,11 +616,18 @@
     my $interface = shift;
 
     my @customInternalFields = ();
+    # We can't ask whether a parent type has a given extendedAttribute,
+    # so special-case AbstractWorker and WorkerContext to include all sub-types.
     # Event listeners on DOM nodes are explicitly supported in the GC controller.
-    if (!$codeGenerator->InheritsInterface($interface, "Node") &&
-        $codeGenerator->InheritsExtendedAttribute($interface, "EventTarget")) {
+    # FIXME: Simplify this when all EventTargets are subtypes of EventTarget.
+    if (!$codeGenerator->InheritsInterface($interface, "Node")
+        && ($interface->extendedAttributes->{"EventTarget"}
+            || $interface->extendedAttributes->{"IsWorkerContext"}
+            || $codeGenerator->InheritsInterface($interface, "AbstractWorker")
+            || $codeGenerator->InheritsInterface($interface, "EventTarget"))) {
         push(@customInternalFields, "eventListenerCacheIndex");
     }
+
     return @customInternalFields;
 }
 

Modified: trunk/Source/WebCore/dom/EventTarget.idl (141517 => 141518)


--- trunk/Source/WebCore/dom/EventTarget.idl	2013-02-01 01:48:20 UTC (rev 141517)
+++ trunk/Source/WebCore/dom/EventTarget.idl	2013-02-01 01:57:36 UTC (rev 141518)
@@ -25,8 +25,7 @@
     OmitConstructor,
     CustomToJSObject,
     JSCustomToNativeObject,
-    V8NoWrapperCache,
-    EventTarget
+    V8NoWrapperCache
 ] interface EventTarget {
     [ObjCLegacyUnnamedParameters] void addEventListener(in DOMString type, 
                                          in EventListener listener, 

Modified: trunk/Source/WebCore/svg/SVGElementInstance.idl (141517 => 141518)


--- trunk/Source/WebCore/svg/SVGElementInstance.idl	2013-02-01 01:48:20 UTC (rev 141517)
+++ trunk/Source/WebCore/svg/SVGElementInstance.idl	2013-02-01 01:57:36 UTC (rev 141518)
@@ -28,8 +28,7 @@
     Conditional=SVG,
     JSCustomMarkFunction,
     JSGenerateToNativeObject,
-    JSGenerateToJSObject,
-    EventTarget
+    JSGenerateToJSObject
 ] interface SVGElementInstance
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     : Object, EventTarget
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to