[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

zimmermann at webkit.org zimmermann at webkit.org
Wed Dec 22 16:11:24 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit c4328a0a121b7a73c8ba390c3bf1287864a04b35
Author: zimmermann at webkit.org <zimmermann at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Nov 19 14:15:23 2010 +0000

    2010-11-19  Nikolas Zimmermann  <nzimmermann at rim.com>
    
            Reviewed by Andreas Kling.
    
            Remove more unused V8/SVG code
            https://bugs.webkit.org/show_bug.cgi?id=49800
    
            Remove DOMSVGObjectWithContextMap and all usages.
    
            * bindings/scripts/CodeGeneratorV8.pm:
            * bindings/v8/DOMDataStore.cpp:
            (WebCore::DOMDataStore::DOMDataStore):
            (WebCore::DOMDataStore::getDOMWrapperMap):
            * bindings/v8/DOMDataStore.h:
            (WebCore::DOMDataStore::domSvgElementInstanceMap):
            * bindings/v8/ScopedDOMDataStore.cpp:
            (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
            (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
            * bindings/v8/StaticDOMDataStore.cpp:
            (WebCore::StaticDOMDataStore::StaticDOMDataStore):
            * bindings/v8/StaticDOMDataStore.h:
            * bindings/v8/V8DOMMap.cpp:
            (WebCore::removeAllDOMObjectsInCurrentThread):
            * bindings/v8/V8DOMMap.h:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@72390 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 4e6b228..4d501c4 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,28 @@
+2010-11-19  Nikolas Zimmermann  <nzimmermann at rim.com>
+
+        Reviewed by Andreas Kling.
+
+        Remove more unused V8/SVG code
+        https://bugs.webkit.org/show_bug.cgi?id=49800
+
+        Remove DOMSVGObjectWithContextMap and all usages.
+
+        * bindings/scripts/CodeGeneratorV8.pm:
+        * bindings/v8/DOMDataStore.cpp:
+        (WebCore::DOMDataStore::DOMDataStore):
+        (WebCore::DOMDataStore::getDOMWrapperMap):
+        * bindings/v8/DOMDataStore.h:
+        (WebCore::DOMDataStore::domSvgElementInstanceMap):
+        * bindings/v8/ScopedDOMDataStore.cpp:
+        (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
+        (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
+        * bindings/v8/StaticDOMDataStore.cpp:
+        (WebCore::StaticDOMDataStore::StaticDOMDataStore):
+        * bindings/v8/StaticDOMDataStore.h:
+        * bindings/v8/V8DOMMap.cpp:
+        (WebCore::removeAllDOMObjectsInCurrentThread):
+        * bindings/v8/V8DOMMap.h:
+
 2010-11-19  Zoltan Herczeg  <zherczeg at webkit.org>
 
         Reviewed by Nikolas Zimmermann.
diff --git a/WebCore/bindings/scripts/CodeGeneratorV8.pm b/WebCore/bindings/scripts/CodeGeneratorV8.pm
index 390bcfb..90341b8 100644
--- a/WebCore/bindings/scripts/CodeGeneratorV8.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorV8.pm
@@ -2533,8 +2533,6 @@ sub GetDomMapFunction
     my $type = shift;
     return "getDOMSVGElementInstanceMap()" if $type eq "SVGElementInstance";
     return "getDOMNodeMap()" if ($dataNode && IsNodeSubType($dataNode));
-    # Only use getDOMSVGObjectWithContextMap() for non-node svg objects
-    return "getDOMSVGObjectWithContextMap()" if $type =~ /SVG/ and not $codeGenerator->IsSVGTypeNeedingTearOff($type) and not $codeGenerator->IsSVGAnimatedType($type);
     return "" if $type eq "DOMImplementation";
     return "getActiveDOMObjectMap()" if IsActiveDomType($type);
     return "getDOMObjectMap()";
diff --git a/WebCore/bindings/v8/DOMDataStore.cpp b/WebCore/bindings/v8/DOMDataStore.cpp
index 0b06a69..0d37dc0 100644
--- a/WebCore/bindings/v8/DOMDataStore.cpp
+++ b/WebCore/bindings/v8/DOMDataStore.cpp
@@ -88,7 +88,6 @@ DOMDataStore::DOMDataStore(DOMData* domData)
     , m_activeDomObjectMap(0)
 #if ENABLE(SVG)
     , m_domSvgElementInstanceMap(0)
-    , m_domSvgObjectWithContextMap(0)
 #endif
     , m_domData(domData)
 {
@@ -126,8 +125,6 @@ void* DOMDataStore::getDOMWrapperMap(DOMWrapperMapType type)
 #if ENABLE(SVG)
     case DOMSVGElementInstanceMap:
         return m_domSvgElementInstanceMap;
-    case DOMSVGObjectWithContextMap:
-        return m_domSvgObjectWithContextMap;
 #endif
     }
 
@@ -197,13 +194,6 @@ void DOMDataStore::weakSVGElementInstanceCallback(v8::Persistent<v8::Value> v8Ob
     DOMData::handleWeakObject(DOMDataStore::DOMSVGElementInstanceMap, v8::Persistent<v8::Object>::Cast(v8Object), static_cast<SVGElementInstance*>(domObject));
 }
 
-void DOMDataStore::weakSVGObjectWithContextCallback(v8::Persistent<v8::Value> v8Object, void* domObject)
-{
-    v8::HandleScope scope;
-    ASSERT(v8Object->IsObject());
-    DOMData::handleWeakObject(DOMDataStore::DOMSVGObjectWithContextMap, v8::Persistent<v8::Object>::Cast(v8Object), domObject);
-}
-
 #endif  // ENABLE(SVG)
 
 } // namespace WebCore
diff --git a/WebCore/bindings/v8/DOMDataStore.h b/WebCore/bindings/v8/DOMDataStore.h
index c39a0ed..3758e23 100644
--- a/WebCore/bindings/v8/DOMDataStore.h
+++ b/WebCore/bindings/v8/DOMDataStore.h
@@ -156,8 +156,7 @@ namespace WebCore {
             DOMObjectMap,
             ActiveDOMObjectMap,
 #if ENABLE(SVG)
-            DOMSVGElementInstanceMap,
-            DOMSVGObjectWithContextMap
+            DOMSVGElementInstanceMap
 #endif
         };
 
@@ -251,7 +250,6 @@ namespace WebCore {
         DOMWrapperMap<void>& activeDomObjectMap() { return *m_activeDomObjectMap; }
 #if ENABLE(SVG)
         DOMWrapperMap<SVGElementInstance>& domSvgElementInstanceMap() { return *m_domSvgElementInstanceMap; }
-        DOMWrapperMap<void>& domSvgObjectWithContextMap() { return *m_domSvgObjectWithContextMap; }
 #endif
 
         // Need by V8GCController.
@@ -262,8 +260,6 @@ namespace WebCore {
         static void weakDOMObjectCallback(v8::Persistent<v8::Value> v8Object, void* domObject);
 #if ENABLE(SVG)
         static void weakSVGElementInstanceCallback(v8::Persistent<v8::Value> v8Object, void* domObject);
-        // SVG non-node elements may have a reference to a context node which should be notified when the element is change.
-        static void weakSVGObjectWithContextCallback(v8::Persistent<v8::Value> v8Object, void* domObject);
 #endif
         
         DOMNodeMapping* m_domNodeMap;
@@ -271,7 +267,6 @@ namespace WebCore {
         DOMWrapperMap<void>* m_activeDomObjectMap;
 #if ENABLE(SVG)
         DOMWrapperMap<SVGElementInstance>* m_domSvgElementInstanceMap;
-        DOMWrapperMap<void>* m_domSvgObjectWithContextMap;
 #endif
 
     private:
diff --git a/WebCore/bindings/v8/ScopedDOMDataStore.cpp b/WebCore/bindings/v8/ScopedDOMDataStore.cpp
index df4a63a..60a6c67 100644
--- a/WebCore/bindings/v8/ScopedDOMDataStore.cpp
+++ b/WebCore/bindings/v8/ScopedDOMDataStore.cpp
@@ -41,7 +41,6 @@ ScopedDOMDataStore::ScopedDOMDataStore(DOMData* domData)
     m_activeDomObjectMap = new DOMWrapperMap<void>(&DOMDataStore::weakActiveDOMObjectCallback);
 #if ENABLE(SVG)
     m_domSvgElementInstanceMap = new DOMWrapperMap<SVGElementInstance>(&DOMDataStore::weakSVGElementInstanceCallback);
-    m_domSvgObjectWithContextMap = new DOMWrapperMap<void>(&DOMDataStore::weakSVGObjectWithContextCallback);
 #endif
 }
 
@@ -52,7 +51,6 @@ ScopedDOMDataStore::~ScopedDOMDataStore()
     delete m_activeDomObjectMap;
 #if ENABLE(SVG)
     delete m_domSvgElementInstanceMap;
-    delete m_domSvgObjectWithContextMap;
 #endif
 }
 
diff --git a/WebCore/bindings/v8/StaticDOMDataStore.cpp b/WebCore/bindings/v8/StaticDOMDataStore.cpp
index 0b0d531..b4c36b9 100644
--- a/WebCore/bindings/v8/StaticDOMDataStore.cpp
+++ b/WebCore/bindings/v8/StaticDOMDataStore.cpp
@@ -40,7 +40,6 @@ StaticDOMDataStore::StaticDOMDataStore(DOMData* domData)
     , m_staticActiveDomObjectMap(&DOMDataStore::weakActiveDOMObjectCallback)
 #if ENABLE(SVG)
     , m_staticDomSvgElementInstanceMap(&DOMDataStore::weakSVGElementInstanceCallback)
-    , m_staticDomSvgObjectWithContextMap(&DOMDataStore::weakSVGObjectWithContextCallback)
 #endif
 {
     m_domNodeMap = &m_staticDomNodeMap;
@@ -48,7 +47,6 @@ StaticDOMDataStore::StaticDOMDataStore(DOMData* domData)
     m_activeDomObjectMap = &m_staticActiveDomObjectMap;
 #if ENABLE(SVG)
     m_domSvgElementInstanceMap = &m_staticDomSvgElementInstanceMap;
-    m_domSvgObjectWithContextMap = &m_staticDomSvgObjectWithContextMap;
 #endif
 }
 
diff --git a/WebCore/bindings/v8/StaticDOMDataStore.h b/WebCore/bindings/v8/StaticDOMDataStore.h
index d1e5a30..fb6aa42 100644
--- a/WebCore/bindings/v8/StaticDOMDataStore.h
+++ b/WebCore/bindings/v8/StaticDOMDataStore.h
@@ -53,7 +53,6 @@ private:
     DOMWrapperMap<void> m_staticActiveDomObjectMap;
 #if ENABLE(SVG)
     DOMWrapperMap<SVGElementInstance> m_staticDomSvgElementInstanceMap;
-    DOMWrapperMap<void> m_staticDomSvgObjectWithContextMap;
 #endif
 };
 
diff --git a/WebCore/bindings/v8/V8DOMMap.cpp b/WebCore/bindings/v8/V8DOMMap.cpp
index b478d06..e1ac2c6 100644
--- a/WebCore/bindings/v8/V8DOMMap.cpp
+++ b/WebCore/bindings/v8/V8DOMMap.cpp
@@ -86,12 +86,6 @@ DOMWrapperMap<SVGElementInstance>& getDOMSVGElementInstanceMap()
     return getDOMDataStore().domSvgElementInstanceMap();
 }
 
-// Map of SVG objects with contexts to V8 objects
-DOMWrapperMap<void>& getDOMSVGObjectWithContextMap()
-{
-    return getDOMDataStore().domSvgObjectWithContextMap();
-}
-
 #endif // ENABLE(SVG)
 
 void removeAllDOMObjectsInCurrentThread()
@@ -106,9 +100,6 @@ void removeAllDOMObjectsInCurrentThread()
 #if ENABLE(SVG)
         // Remove all SVG element instances in the wrapper map.
         DOMData::removeObjectsFromWrapperMap<SVGElementInstance>(getDOMSVGElementInstanceMap());
-
-        // Remove all SVG objects with context in the wrapper map.
-        DOMData::removeObjectsFromWrapperMap<void>(getDOMSVGObjectWithContextMap());
 #endif
     }
 
@@ -181,21 +172,6 @@ void visitDOMSVGElementInstancesInCurrentThread(DOMWrapperMap<SVGElementInstance
     }
 }
 
-void visitSVGObjectsInCurrentThread(DOMWrapperMap<void>::Visitor* visitor)
-{
-    v8::HandleScope scope;
-
-    WTF::MutexLocker locker(DOMDataStore::allStoresMutex());
-    DOMDataList& list = DOMDataStore::allStores();
-    for (size_t i = 0; i < list.size(); ++i) {
-        DOMDataStore* store = list[i];
-        if (!store->domData()->owningThread() == WTF::currentThread())
-            continue;
-
-        store->domSvgObjectWithContextMap().visit(visitor);
-    }
-}
-
 #endif
 
 } // namespace WebCore
diff --git a/WebCore/bindings/v8/V8DOMMap.h b/WebCore/bindings/v8/V8DOMMap.h
index d8d5c04..b50bc99 100644
--- a/WebCore/bindings/v8/V8DOMMap.h
+++ b/WebCore/bindings/v8/V8DOMMap.h
@@ -170,10 +170,6 @@ namespace WebCore {
     // A map for SVGElementInstances to its JS wrapper.
     DOMWrapperMap<SVGElementInstance>& getDOMSVGElementInstanceMap();
     void visitSVGElementInstancesInCurrentThread(DOMWrapperMap<SVGElementInstance>::Visitor*);
-
-    // Map of SVG objects with contexts to V8 objects.
-    DOMWrapperMap<void>& getDOMSVGObjectWithContextMap();
-    void visitDOMSVGObjectsInCurrentThread(DOMWrapperMap<void>::Visitor*);
 #endif
 
     void enableFasterDOMStoreAccess();

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list