Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Side by Side Diff: third_party/WebKit/Source/bindings/templates/interface.cpp

Issue 1683493003: Remove ContextScope from visitDOMWrapper (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 {% extends 'interface_base.cpp' %} 1 {% extends 'interface_base.cpp' %}
2 2
3 3
4 {##############################################################################} 4 {##############################################################################}
5 {% block indexed_property_getter %} 5 {% block indexed_property_getter %}
6 {% if indexed_property_getter and not indexed_property_getter.is_custom %} 6 {% if indexed_property_getter and not indexed_property_getter.is_custom %}
7 {% set getter = indexed_property_getter %} 7 {% set getter = indexed_property_getter %}
8 static void indexedPropertyGetter(uint32_t index, const v8::PropertyCallbackInfo <v8::Value>& info) 8 static void indexedPropertyGetter(uint32_t index, const v8::PropertyCallbackInfo <v8::Value>& info)
9 { 9 {
10 {{cpp_class}}* impl = {{v8_class}}::toImpl(info.Holder()); 10 {{cpp_class}}* impl = {{v8_class}}::toImpl(info.Holder());
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
544 {% endif %} 544 {% endif %}
545 {% endblock %} 545 {% endblock %}
546 546
547 {##############################################################################} 547 {##############################################################################}
548 {% block visit_dom_wrapper %} 548 {% block visit_dom_wrapper %}
549 {% if set_wrapper_reference_from or set_wrapper_reference_to %} 549 {% if set_wrapper_reference_from or set_wrapper_reference_to %}
550 void {{v8_class}}::visitDOMWrapper(v8::Isolate* isolate, ScriptWrappable* script Wrappable, const v8::Persistent<v8::Object>& wrapper) 550 void {{v8_class}}::visitDOMWrapper(v8::Isolate* isolate, ScriptWrappable* script Wrappable, const v8::Persistent<v8::Object>& wrapper)
551 { 551 {
552 {{cpp_class}}* impl = scriptWrappable->toImpl<{{cpp_class}}>(); 552 {{cpp_class}}* impl = scriptWrappable->toImpl<{{cpp_class}}>();
553 {% if set_wrapper_reference_to %} 553 {% if set_wrapper_reference_to %}
554 v8::Local<v8::Object> context = v8::Local<v8::Object>::New(isolate, wrapper) ;
555 v8::Context::Scope scope(context->CreationContext());
556 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im pl->{{set_wrapper_reference_to.name}}(); 554 {{set_wrapper_reference_to.cpp_type}} {{set_wrapper_reference_to.name}} = im pl->{{set_wrapper_reference_to.name}}();
557 if ({{set_wrapper_reference_to.name}}) { 555 if ({{set_wrapper_reference_to.name}}) {
558 if (DOMDataStore::containsWrapper({{set_wrapper_reference_to.name}}, iso late)) 556 DOMWrapperWorld::setWrapperReferencesInAllWorlds(wrapper, {{set_wrapper_ reference_to.name}}, isolate);
559 DOMDataStore::setWrapperReference(wrapper, {{set_wrapper_reference_t o.name}}, isolate);
560 } 557 }
561 {% endif %} 558 {% endif %}
562 {% if set_wrapper_reference_from %} 559 {% if set_wrapper_reference_from %}
563 // The {{set_wrapper_reference_from}}() method may return a reference or a p ointer. 560 // The {{set_wrapper_reference_from}}() method may return a reference or a p ointer.
564 if (Node* owner = WTF::getPtr(impl->{{set_wrapper_reference_from}}())) { 561 if (Node* owner = WTF::getPtr(impl->{{set_wrapper_reference_from}}())) {
565 Node* root = V8GCController::opaqueRootForGC(isolate, owner); 562 Node* root = V8GCController::opaqueRootForGC(isolate, owner);
566 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r oot)), wrapper); 563 isolate->SetReferenceFromGroup(v8::UniqueId(reinterpret_cast<intptr_t>(r oot)), wrapper);
567 return; 564 return;
568 } 565 }
569 {% endif %} 566 {% endif %}
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after
937 934
938 {% for method in methods if method.overloads and method.overloads.has_partial_ov erloads %} 935 {% for method in methods if method.overloads and method.overloads.has_partial_ov erloads %}
939 void {{v8_class}}::register{{method.name | blink_capitalize}}MethodForPartialInt erface(void (*method)(const v8::FunctionCallbackInfo<v8::Value>&)) 936 void {{v8_class}}::register{{method.name | blink_capitalize}}MethodForPartialInt erface(void (*method)(const v8::FunctionCallbackInfo<v8::Value>&))
940 { 937 {
941 {{cpp_class}}V8Internal::{{method.name}}MethodForPartialInterface = method; 938 {{cpp_class}}V8Internal::{{method.name}}MethodForPartialInterface = method;
942 } 939 }
943 940
944 {% endfor %} 941 {% endfor %}
945 {% endif %} 942 {% endif %}
946 {% endblock %} 943 {% endblock %}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698