Chromium Code Reviews| Index: third_party/WebKit/Source/bindings/core/v8/DOMDataStore.h |
| diff --git a/third_party/WebKit/Source/bindings/core/v8/DOMDataStore.h b/third_party/WebKit/Source/bindings/core/v8/DOMDataStore.h |
| index 272c55149e824c63d1a9f82d6811b3eff2cae980..b6cfef648cb85763b0b2df72eaa8ef12f892beca 100644 |
| --- a/third_party/WebKit/Source/bindings/core/v8/DOMDataStore.h |
| +++ b/third_party/WebKit/Source/bindings/core/v8/DOMDataStore.h |
| @@ -183,6 +183,12 @@ class DOMDataStore { |
| m_wrapperMap->setReference(isolate, parent, child); |
| } |
| + // Dissociates a wrapper, if any, from |scriptWrappable|. |
|
haraken
2017/02/09 12:46:40
Dissociate => Disconnect ?
Yuki
2017/02/10 07:47:21
A dictionary says:
connect <=> disconnect
asso
|
| + void unsetWrapperIfAny(ScriptWrappable* scriptWrappable) { |
| + DCHECK(!m_isMainWorld); |
| + m_wrapperMap->removeIfAny(scriptWrappable); |
| + } |
| + |
| bool setReturnValueFrom(v8::ReturnValue<v8::Value> returnValue, |
| ScriptWrappable* object) { |
| if (m_isMainWorld) |
| @@ -240,18 +246,16 @@ class DOMDataStore { |
| template <> |
| inline void DOMWrapperMap<ScriptWrappable>::PersistentValueMapTraits::Dispose( |
| v8::Isolate*, |
| - v8::Global<v8::Object> value, |
| + v8::Global<v8::Object>, |
| ScriptWrappable*) { |
| - toWrapperTypeInfo(value)->wrapperDestroyed(); |
| + WrapperTypeInfo::wrapperDestroyed(); |
| } |
| template <> |
| inline void |
| DOMWrapperMap<ScriptWrappable>::PersistentValueMapTraits::DisposeWeak( |
| - const v8::WeakCallbackInfo<WeakCallbackDataType>& data) { |
| - auto wrapperTypeInfo = reinterpret_cast<WrapperTypeInfo*>( |
| - data.GetInternalField(v8DOMWrapperTypeIndex)); |
| - wrapperTypeInfo->wrapperDestroyed(); |
| + const v8::WeakCallbackInfo<WeakCallbackDataType>&) { |
| + WrapperTypeInfo::wrapperDestroyed(); |
| } |
| } // namespace blink |