| Index: Source/bindings/v8/V8PerIsolateData.cpp
|
| diff --git a/Source/bindings/v8/V8PerIsolateData.cpp b/Source/bindings/v8/V8PerIsolateData.cpp
|
| index f1d1f27cdfcdb72c0ffc2e36151bd69bfe6436ba..563b2b51b2db0741d4c4790252212dc1f6949735 100644
|
| --- a/Source/bindings/v8/V8PerIsolateData.cpp
|
| +++ b/Source/bindings/v8/V8PerIsolateData.cpp
|
| @@ -105,9 +105,10 @@ v8::Handle<v8::FunctionTemplate> V8PerIsolateData::domTemplate(void* domTemplate
|
| DOMTemplateMap& domTemplateMap = currentDOMTemplateMap();
|
| DOMTemplateMap::iterator result = domTemplateMap.find(domTemplateKey);
|
| if (result != domTemplateMap.end())
|
| - return result->value.newLocal(m_isolate);
|
| + return result->value.Get(m_isolate);
|
| +
|
| v8::Local<v8::FunctionTemplate> templ = v8::FunctionTemplate::New(m_isolate, callback, data, signature, length);
|
| - domTemplateMap.add(domTemplateKey, UnsafePersistent<v8::FunctionTemplate>(m_isolate, templ));
|
| + domTemplateMap.add(domTemplateKey, v8::Eternal<v8::FunctionTemplate>(m_isolate, templ));
|
| return templ;
|
| }
|
|
|
| @@ -116,13 +117,13 @@ v8::Handle<v8::FunctionTemplate> V8PerIsolateData::existingDOMTemplate(void* dom
|
| DOMTemplateMap& domTemplateMap = currentDOMTemplateMap();
|
| DOMTemplateMap::iterator result = domTemplateMap.find(domTemplateKey);
|
| if (result != domTemplateMap.end())
|
| - return result->value.newLocal(m_isolate);
|
| + return result->value.Get(m_isolate);
|
| return v8::Local<v8::FunctionTemplate>();
|
| }
|
|
|
| void V8PerIsolateData::setDOMTemplate(void* domTemplateKey, v8::Handle<v8::FunctionTemplate> templ)
|
| {
|
| - currentDOMTemplateMap().add(domTemplateKey, UnsafePersistent<v8::FunctionTemplate>(m_isolate, templ));
|
| + currentDOMTemplateMap().add(domTemplateKey, v8::Eternal<v8::FunctionTemplate>(m_isolate, v8::Local<v8::FunctionTemplate>(templ)));
|
| }
|
|
|
| v8::Local<v8::Context> V8PerIsolateData::ensureRegexContext()
|
| @@ -143,7 +144,7 @@ bool V8PerIsolateData::hasInstance(const WrapperTypeInfo* info, v8::Handle<v8::V
|
| DOMTemplateMap::iterator result = domTemplateMap.find(info);
|
| if (result == domTemplateMap.end())
|
| return false;
|
| - v8::Handle<v8::FunctionTemplate> templ = result->value.newLocal(m_isolate);
|
| + v8::Handle<v8::FunctionTemplate> templ = result->value.Get(m_isolate);
|
| return templ->HasInstance(value);
|
| }
|
|
|
| @@ -162,7 +163,7 @@ v8::Handle<v8::Object> V8PerIsolateData::findInstanceInPrototypeChain(const Wrap
|
| DOMTemplateMap::iterator result = domTemplateMap.find(info);
|
| if (result == domTemplateMap.end())
|
| return v8::Handle<v8::Object>();
|
| - v8::Handle<v8::FunctionTemplate> templ = result->value.newLocal(m_isolate);
|
| + v8::Handle<v8::FunctionTemplate> templ = result->value.Get(m_isolate);
|
| return v8::Handle<v8::Object>::Cast(value)->FindInstanceInPrototypeChain(templ);
|
| }
|
|
|
|
|