| Index: Source/bindings/tests/results/V8TestInterface.cpp
|
| diff --git a/Source/bindings/tests/results/V8TestInterface.cpp b/Source/bindings/tests/results/V8TestInterface.cpp
|
| index d249b0801a4669624a9e21bc7cc82c43e044c258..fd923f34cb96f54165dc9dae53b67fefc5576e92 100644
|
| --- a/Source/bindings/tests/results/V8TestInterface.cpp
|
| +++ b/Source/bindings/tests/results/V8TestInterface.cpp
|
| @@ -25,6 +25,7 @@
|
| #include "RuntimeEnabledFeatures.h"
|
| #include "V8Node.h"
|
| #include "V8NodeList.h"
|
| +#include "V8ReferencedType.h"
|
| #include "V8TestObject.h"
|
| #include "bindings/tests/idls/TestImplements.h"
|
| #include "bindings/tests/idls/TestPartialInterface.h"
|
| @@ -64,7 +65,7 @@ void webCoreInitializeScriptWrappableForInterface(WebCore::TestInterface* object
|
| }
|
|
|
| namespace WebCore {
|
| -WrapperTypeInfo V8TestInterface::info = { V8TestInterface::GetTemplate, V8TestInterface::derefObject, V8TestInterface::toActiveDOMObject, 0, 0, V8TestInterface::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
|
| +WrapperTypeInfo V8TestInterface::info = { V8TestInterface::GetTemplate, V8TestInterface::derefObject, V8TestInterface::toActiveDOMObject, 0, V8TestInterface::resolveWrapperReachability, V8TestInterface::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
|
|
|
| namespace TestInterfaceV8Internal {
|
|
|
| @@ -925,6 +926,19 @@ static void namedPropertyQueryCallback(v8::Local<v8::String> name, const v8::Pro
|
|
|
| } // namespace TestInterfaceV8Internal
|
|
|
| +void V8TestInterface::resolveWrapperReachability(void* object, const v8::Persistent<v8::Object>& wrapper, v8::Isolate* isolate)
|
| +{
|
| + TestInterface* impl = fromInternalPointer(object);
|
| + v8::Local<v8::Object> creationContext = v8::Local<v8::Object>::New(isolate, wrapper);
|
| + ReferencedType* ReferencedName = impl->ReferencedName();
|
| + if (ReferencedName) {
|
| + if(!DOMDataStore::containsWrapper<V8ReferencedType>(ReferencedName, isolate))
|
| + wrap(ReferencedName, creationContext, isolate);
|
| + DOMDataStore::setWrapperReference<V8ReferencedType>(wrapper, ReferencedName, isolate);
|
| + }
|
| + setObjectGroup(object, wrapper, isolate);
|
| +}
|
| +
|
| static const V8DOMConfiguration::AttributeConfiguration V8TestInterfaceAttributes[] = {
|
| #if ENABLE(Condition22) || ENABLE(Condition23)
|
| {"implementsStr1", TestInterfaceV8Internal::implementsStr1AttributeGetterCallback, 0, 0, 0, 0, static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None), 0 /* on instance */},
|
|
|