[SCM] WebKit Debian packaging branch, debian/experimental, updated. debian/1.3.8-1-1049-g2e11a8e
antonm at chromium.org
antonm at chromium.org
Fri Jan 21 14:43:15 UTC 2011
The following commit has been merged in the debian/experimental branch:
commit 21b422ecfdea9fa848df15c6c550b2f826d93a25
Author: antonm at chromium.org <antonm at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Dec 27 17:41:55 2010 +0000
2010-12-27 Anton Muhin <antonm at chromium.org>
Reviewed by David Levin.
[v8] Remove unused methods to protect/unprotect wrappers during garbage collection
https://bugs.webkit.org/show_bug.cgi?id=51648
* bindings/v8/ScriptController.cpp:
* bindings/v8/ScriptController.h:
* bindings/v8/V8GCController.cpp:
(WebCore::V8GCController::gcEpilogue):
* bindings/v8/V8GCController.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 7a9ccd0..9a250a5 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2010-12-27 Anton Muhin <antonm at chromium.org>
+
+ Reviewed by David Levin.
+
+ [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
+ https://bugs.webkit.org/show_bug.cgi?id=51648
+
+ * bindings/v8/ScriptController.cpp:
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::V8GCController::gcEpilogue):
+ * bindings/v8/V8GCController.h:
+
2010-12-27 Yury Semikhatsky <yurys at chromium.org>
Unreviewed. Removed trailing spaces from a localized
diff --git a/WebCore/bindings/v8/ScriptController.cpp b/WebCore/bindings/v8/ScriptController.cpp
index d746f15..701bd19 100644
--- a/WebCore/bindings/v8/ScriptController.cpp
+++ b/WebCore/bindings/v8/ScriptController.cpp
@@ -106,16 +106,6 @@ bool ScriptController::isSafeScript(Frame* target)
return V8BindingSecurity::canAccessFrame(V8BindingState::Only(), target, true);
}
-void ScriptController::gcProtectJSWrapper(void* domObject)
-{
- V8GCController::gcProtect(domObject);
-}
-
-void ScriptController::gcUnprotectJSWrapper(void* domObject)
-{
- V8GCController::gcUnprotect(domObject);
-}
-
ScriptController::ScriptController(Frame* frame)
: m_frame(frame)
, m_sourceURL(0)
diff --git a/WebCore/bindings/v8/ScriptController.h b/WebCore/bindings/v8/ScriptController.h
index d093f39..7664846 100644
--- a/WebCore/bindings/v8/ScriptController.h
+++ b/WebCore/bindings/v8/ScriptController.h
@@ -149,10 +149,6 @@ public:
// Pass command-line flags to the JS engine.
static void setFlags(const char* string, int length);
- // Protect and unprotect the JS wrapper from garbage collected.
- static void gcProtectJSWrapper(void*);
- static void gcUnprotectJSWrapper(void*);
-
void finishedWithEvent(Event*);
TextPosition0 eventHandlerPosition() const;
diff --git a/WebCore/bindings/v8/V8GCController.cpp b/WebCore/bindings/v8/V8GCController.cpp
index c8d3dd3..f1cf206 100644
--- a/WebCore/bindings/v8/V8GCController.cpp
+++ b/WebCore/bindings/v8/V8GCController.cpp
@@ -128,17 +128,6 @@ typedef HashMap<void*, v8::Object*> DOMObjectMap;
#ifndef NDEBUG
-static void enumerateDOMObjectMap(DOMObjectMap& wrapperMap)
-{
- for (DOMObjectMap::iterator it = wrapperMap.begin(), end = wrapperMap.end(); it != end; ++it) {
- v8::Persistent<v8::Object> wrapper(it->second);
- WrapperTypeInfo* type = V8DOMWrapper::domWrapperType(wrapper);
- void* object = it->first;
- UNUSED_PARAM(type);
- UNUSED_PARAM(object);
- }
-}
-
class DOMObjectVisitor : public DOMWrapperMap<void>::Visitor {
public:
void visitDOMWrapper(DOMDataStore* store, void* object, v8::Persistent<v8::Object> wrapper)
@@ -160,43 +149,6 @@ public:
#endif // NDEBUG
-// A map from a DOM node to its JS wrapper, the wrapper
-// is kept as a strong reference to survive GCs.
-static DOMObjectMap& gcProtectedMap()
-{
- DEFINE_STATIC_LOCAL(DOMObjectMap, staticGcProtectedMap, ());
- return staticGcProtectedMap;
-}
-
-void V8GCController::gcProtect(void* domObject)
-{
- if (!domObject)
- return;
- if (gcProtectedMap().contains(domObject))
- return;
- if (!getDOMObjectMap().contains(domObject))
- return;
-
- // Create a new (strong) persistent handle for the object.
- v8::Persistent<v8::Object> wrapper = getDOMObjectMap().get(domObject);
- if (wrapper.IsEmpty())
- return;
-
- gcProtectedMap().set(domObject, *v8::Persistent<v8::Object>::New(wrapper));
-}
-
-void V8GCController::gcUnprotect(void* domObject)
-{
- if (!domObject)
- return;
- if (!gcProtectedMap().contains(domObject))
- return;
-
- // Dispose the strong reference.
- v8::Persistent<v8::Object> wrapper(gcProtectedMap().take(domObject));
- wrapper.Dispose();
-}
-
class GCPrologueVisitor : public DOMWrapperMap<void>::Visitor {
public:
void visitDOMWrapper(DOMDataStore* store, void* object, v8::Persistent<v8::Object> wrapper)
@@ -554,7 +506,6 @@ void V8GCController::gcEpilogue()
EnsureWeakDOMNodeVisitor weakDOMNodeVisitor;
visitDOMNodesInCurrentThread(&weakDOMNodeVisitor);
- enumerateDOMObjectMap(gcProtectedMap());
enumerateGlobalHandles();
#endif
}
diff --git a/WebCore/bindings/v8/V8GCController.h b/WebCore/bindings/v8/V8GCController.h
index 484be24..9466c98 100644
--- a/WebCore/bindings/v8/V8GCController.h
+++ b/WebCore/bindings/v8/V8GCController.h
@@ -66,10 +66,6 @@ namespace WebCore {
class V8GCController {
public:
- // Protect/Unprotect JS wrappers of a DOM object.
- static void gcProtect(void* domObject);
- static void gcUnprotect(void* domObject);
-
#ifndef NDEBUG
// For debugging and leak detection purpose.
static void registerGlobalHandle(GlobalHandleType, void*, v8::Persistent<v8::Value>);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list