Title: [133256] trunk/Source/WebCore
Revision
133256
Author
senorbla...@chromium.org
Date
2012-11-01 18:59:21 -0700 (Thu, 01 Nov 2012)

Log Message

Unreviewed, rolling out r133244.
http://trac.webkit.org/changeset/133244
https://bugs.webkit.org/show_bug.cgi?id=100973

Broke Chromium Mac (clang) builds.

* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::DOMDataStore):
* bindings/v8/IntrusiveDOMWrapperMap.h:
(WebCore::DOMNodeWrapperMap::weakCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (133255 => 133256)


--- trunk/Source/WebCore/ChangeLog	2012-11-02 01:43:25 UTC (rev 133255)
+++ trunk/Source/WebCore/ChangeLog	2012-11-02 01:59:21 UTC (rev 133256)
@@ -1,3 +1,16 @@
+2012-11-01  Stephen White  <senorbla...@chromium.org>
+
+        Unreviewed, rolling out r133244.
+        http://trac.webkit.org/changeset/133244
+        https://bugs.webkit.org/show_bug.cgi?id=100973
+
+        Broke Chromium Mac (clang) builds.
+
+        * bindings/v8/DOMDataStore.cpp:
+        (WebCore::DOMDataStore::DOMDataStore):
+        * bindings/v8/IntrusiveDOMWrapperMap.h:
+        (WebCore::DOMNodeWrapperMap::weakCallback):
+
 2012-11-01  Ami Fischman  <fisch...@chromium.org>
 
         HTMLMediaPlayer should free m_player when src is set/changed

Modified: trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp (133255 => 133256)


--- trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp	2012-11-02 01:43:25 UTC (rev 133255)
+++ trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp	2012-11-02 01:59:21 UTC (rev 133256)
@@ -43,7 +43,7 @@
     : m_type(type)
 {
     if (type == MainWorld)
-        m_domNodeMap = adoptPtr(new IntrusiveDOMWrapperMap<Node>);
+        m_domNodeMap = adoptPtr(new DOMNodeWrapperMap);
     else {
         ASSERT(type == IsolatedWorld || type == Worker);
         // FIXME: In principle, we shouldn't need to create this

Modified: trunk/Source/WebCore/bindings/v8/IntrusiveDOMWrapperMap.h (133255 => 133256)


--- trunk/Source/WebCore/bindings/v8/IntrusiveDOMWrapperMap.h	2012-11-02 01:43:25 UTC (rev 133255)
+++ trunk/Source/WebCore/bindings/v8/IntrusiveDOMWrapperMap.h	2012-11-02 01:59:21 UTC (rev 133256)
@@ -35,19 +35,19 @@
 
 namespace WebCore {
 
-template<class KeyType>
-class IntrusiveDOMWrapperMap : public DOMWrapperMap<KeyType> {
+class DOMNodeWrapperMap : public DOMWrapperMap<Node> {
 public:
-    virtual v8::Persistent<v8::Object> get(KeyType* key) OVERRIDE
+    virtual v8::Persistent<v8::Object> get(Node* node) OVERRIDE
     {
-        return key->wrapper();
+        return node->wrapper();
     }
 
-    virtual void set(KeyType* key, v8::Persistent<v8::Object> wrapper) OVERRIDE
+    virtual void set(Node* node, v8::Persistent<v8::Object> wrapper) OVERRIDE
     {
-        ASSERT(key && key->wrapper().IsEmpty());
-        key->setWrapper(wrapper);
-        wrapper.MakeWeak(key, weakCallback);
+        ASSERT(node && node->wrapper().IsEmpty());
+        ASSERT(wrapper.WrapperClassId() == v8DOMNodeClassId);
+        node->setWrapper(wrapper);
+        wrapper.MakeWeak(node, weakCallback);
     }
 
     virtual void clear() OVERRIDE
@@ -63,13 +63,13 @@
 private:
     static void weakCallback(v8::Persistent<v8::Value> value, void* context)
     {
-        KeyType* key = static_cast<KeyType*>(context);
+        Node* node = static_cast<Node*>(context);
         ASSERT(value->IsObject());
-        ASSERT(key->wrapper() == v8::Persistent<v8::Object>::Cast(value));
+        ASSERT(node->wrapper() == v8::Persistent<v8::Object>::Cast(value));
 
-        key->clearWrapper();
+        node->clearWrapper();
         value.Dispose();
-        key->deref();
+        node->deref();
     }
 };
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to