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

Side by Side Diff: Source/bindings/v8/V8PerIsolateData.cpp

Issue 219003002: [ABANDONED] Call Microtask::performCheckpoint for each worker task. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 8 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 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 return v8::Local<v8::FunctionTemplate>(); 120 return v8::Local<v8::FunctionTemplate>();
121 } 121 }
122 122
123 void V8PerIsolateData::setDOMTemplate(void* domTemplateKey, v8::Handle<v8::Funct ionTemplate> templ) 123 void V8PerIsolateData::setDOMTemplate(void* domTemplateKey, v8::Handle<v8::Funct ionTemplate> templ)
124 { 124 {
125 currentDOMTemplateMap().add(domTemplateKey, v8::Eternal<v8::FunctionTemplate >(m_isolate, v8::Local<v8::FunctionTemplate>(templ))); 125 currentDOMTemplateMap().add(domTemplateKey, v8::Eternal<v8::FunctionTemplate >(m_isolate, v8::Local<v8::FunctionTemplate>(templ)));
126 } 126 }
127 127
128 v8::Local<v8::Context> V8PerIsolateData::ensureDomInJSContext() 128 v8::Local<v8::Context> V8PerIsolateData::ensureDomInJSContext()
129 { 129 {
130 if (!m_blinkInJSScriptState) 130 if (!m_blinkInJSScriptState) {
131 m_blinkInJSScriptState = NewScriptState::create(v8::Context::New(m_isola te), DOMWrapperWorld::create()); 131 v8::Local<v8::Context> context(v8::Context::New(m_isolate));
132 if (context.IsEmpty()) {
133 // The script execution has been terminated.
134 return context;
135 }
136 m_blinkInJSScriptState = NewScriptState::create(context, DOMWrapperWorld ::create());
137 }
132 return m_blinkInJSScriptState->context(); 138 return m_blinkInJSScriptState->context();
133 } 139 }
134 140
135 bool V8PerIsolateData::hasInstance(const WrapperTypeInfo* info, v8::Handle<v8::V alue> value) 141 bool V8PerIsolateData::hasInstance(const WrapperTypeInfo* info, v8::Handle<v8::V alue> value)
136 { 142 {
137 return hasInstance(info, value, m_domTemplateMapForMainWorld) 143 return hasInstance(info, value, m_domTemplateMapForMainWorld)
138 || hasInstance(info, value, m_domTemplateMapForNonMainWorld); 144 || hasInstance(info, value, m_domTemplateMapForNonMainWorld);
139 } 145 }
140 146
141 bool V8PerIsolateData::hasInstance(const WrapperTypeInfo* info, v8::Handle<v8::V alue> value, DOMTemplateMap& domTemplateMap) 147 bool V8PerIsolateData::hasInstance(const WrapperTypeInfo* info, v8::Handle<v8::V alue> value, DOMTemplateMap& domTemplateMap)
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
185 } 191 }
186 192
187 v8::Handle<v8::FunctionTemplate> V8PerIsolateData::toStringTemplate() 193 v8::Handle<v8::FunctionTemplate> V8PerIsolateData::toStringTemplate()
188 { 194 {
189 if (m_toStringTemplate.isEmpty()) 195 if (m_toStringTemplate.isEmpty())
190 m_toStringTemplate.set(m_isolate, v8::FunctionTemplate::New(m_isolate, c onstructorOfToString)); 196 m_toStringTemplate.set(m_isolate, v8::FunctionTemplate::New(m_isolate, c onstructorOfToString));
191 return m_toStringTemplate.newLocal(m_isolate); 197 return m_toStringTemplate.newLocal(m_isolate);
192 } 198 }
193 199
194 } // namespace WebCore 200 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698