OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2009, 2012 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 are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 | 178 |
179 // Create a new JS object and use it as the prototype for the shadow global
object. | 179 // Create a new JS object and use it as the prototype for the shadow global
object. |
180 const WrapperTypeInfo* wrapperTypeInfo = m_workerGlobalScope.wrapperTypeInfo
(); | 180 const WrapperTypeInfo* wrapperTypeInfo = m_workerGlobalScope.wrapperTypeInfo
(); |
181 v8::Handle<v8::Function> workerGlobalScopeConstructor = m_scriptState->perCo
ntextData()->constructorForType(wrapperTypeInfo); | 181 v8::Handle<v8::Function> workerGlobalScopeConstructor = m_scriptState->perCo
ntextData()->constructorForType(wrapperTypeInfo); |
182 v8::Local<v8::Object> jsWorkerGlobalScope = V8ObjectConstructor::newInstance
(m_isolate, workerGlobalScopeConstructor); | 182 v8::Local<v8::Object> jsWorkerGlobalScope = V8ObjectConstructor::newInstance
(m_isolate, workerGlobalScopeConstructor); |
183 if (jsWorkerGlobalScope.IsEmpty()) { | 183 if (jsWorkerGlobalScope.IsEmpty()) { |
184 m_scriptState->disposePerContextData(); | 184 m_scriptState->disposePerContextData(); |
185 return false; | 185 return false; |
186 } | 186 } |
187 | 187 |
188 V8DOMWrapper::associateObjectWithWrapperNonTemplate(&m_workerGlobalScope, wr
apperTypeInfo, jsWorkerGlobalScope, m_isolate); | 188 V8DOMWrapper::associateObjectWithWrapperNonTemplate(m_isolate, &m_workerGlob
alScope, wrapperTypeInfo, jsWorkerGlobalScope); |
189 | 189 |
190 // Insert the object instance as the prototype of the shadow object. | 190 // Insert the object instance as the prototype of the shadow object. |
191 v8::Handle<v8::Object> globalObject = v8::Handle<v8::Object>::Cast(m_scriptS
tate->context()->Global()->GetPrototype()); | 191 v8::Handle<v8::Object> globalObject = v8::Handle<v8::Object>::Cast(m_scriptS
tate->context()->Global()->GetPrototype()); |
192 globalObject->SetPrototype(jsWorkerGlobalScope); | 192 globalObject->SetPrototype(jsWorkerGlobalScope); |
193 | 193 |
194 return true; | 194 return true; |
195 } | 195 } |
196 | 196 |
197 ScriptValue WorkerScriptController::evaluate(const String& script, const String&
fileName, const TextPosition& scriptStartPosition) | 197 ScriptValue WorkerScriptController::evaluate(const String& script, const String&
fileName, const TextPosition& scriptStartPosition) |
198 { | 198 { |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
307 | 307 |
308 void WorkerScriptController::rethrowExceptionFromImportedScript(PassRefPtrWillBe
RawPtr<ErrorEvent> errorEvent, ExceptionState& exceptionState) | 308 void WorkerScriptController::rethrowExceptionFromImportedScript(PassRefPtrWillBe
RawPtr<ErrorEvent> errorEvent, ExceptionState& exceptionState) |
309 { | 309 { |
310 const String& errorMessage = errorEvent->message(); | 310 const String& errorMessage = errorEvent->message(); |
311 if (m_globalScopeExecutionState) | 311 if (m_globalScopeExecutionState) |
312 m_globalScopeExecutionState->m_errorEventFromImportedScript = errorEvent
; | 312 m_globalScopeExecutionState->m_errorEventFromImportedScript = errorEvent
; |
313 exceptionState.rethrowV8Exception(V8ThrowException::createGeneralError(m_iso
late, errorMessage)); | 313 exceptionState.rethrowV8Exception(V8ThrowException::createGeneralError(m_iso
late, errorMessage)); |
314 } | 314 } |
315 | 315 |
316 } // namespace blink | 316 } // namespace blink |
OLD | NEW |