Index: Source/bindings/v8/custom/V8InjectedScriptManager.cpp |
diff --git a/Source/bindings/v8/custom/V8InjectedScriptManager.cpp b/Source/bindings/v8/custom/V8InjectedScriptManager.cpp |
index 0aa3d02f51e9e681748b5f31c79e6e8442a60963..1f64654ce61bd6fc98a0fab78c26a3c058cef3b7 100644 |
--- a/Source/bindings/v8/custom/V8InjectedScriptManager.cpp |
+++ b/Source/bindings/v8/custom/V8InjectedScriptManager.cpp |
@@ -48,7 +48,7 @@ namespace WebCore { |
struct InjectedScriptManager::CallbackData { |
ScopedPersistent<v8::Object> handle; |
- RefPtr<InjectedScriptHost> host; |
+ RefPtrWillBePersistent<InjectedScriptHost> host; |
}; |
static v8::Local<v8::Object> createInjectedScriptHostV8Wrapper(InjectedScriptHost* host, v8::Isolate* isolate) |
@@ -63,7 +63,7 @@ static v8::Local<v8::Object> createInjectedScriptHostV8Wrapper(InjectedScriptHos |
// Avoid setting the wrapper if allocation failed. |
return v8::Local<v8::Object>(); |
} |
- V8DOMWrapper::setNativeInfo(instanceTemplate, &V8InjectedScriptHost::wrapperTypeInfo, host); |
+ V8DOMWrapper::setNativeInfoWithPersistentHandle(instanceTemplate, &V8InjectedScriptHost::wrapperTypeInfo, host, new Persistent<InjectedScriptHost>(host)); |
haraken
2014/06/17 14:06:17
I think this will leak memory in non-oilpan builds
keishi
2014/06/18 12:31:06
Done.
|
// Create a weak reference to the v8 wrapper of InspectorBackend to deref |
// InspectorBackend when the wrapper is garbage collected. |
InjectedScriptManager::CallbackData* data = new InjectedScriptManager::CallbackData; |