Index: Source/modules/crypto/CryptoResultImpl.cpp |
diff --git a/Source/modules/crypto/CryptoResultImpl.cpp b/Source/modules/crypto/CryptoResultImpl.cpp |
index 5e9649c32f78c958d41ac603772175f492ae1b70..004d1ce588663e0cf1e49d7b7fa561cbe4a78cb1 100644 |
--- a/Source/modules/crypto/CryptoResultImpl.cpp |
+++ b/Source/modules/crypto/CryptoResultImpl.cpp |
@@ -31,7 +31,8 @@ |
#include "config.h" |
#include "modules/crypto/CryptoResultImpl.h" |
-#include "bindings/v8/ScriptPromiseResolver.h" |
+#include "bindings/v8/NewScriptState.h" |
+#include "bindings/v8/ScriptPromiseResolverWithContext.h" |
#include "core/dom/ExecutionContext.h" |
#include "modules/crypto/Key.h" |
#include "modules/crypto/KeyPair.h" |
@@ -57,12 +58,11 @@ void CryptoResultImpl::completeWithError(const blink::WebString& errorDetails) |
ASSERT(!m_finished); |
if (canCompletePromise()) { |
- NewScriptState::Scope scope(m_scriptState.get()); |
eroman
2014/04/16 17:35:05
Does the call to:
execuctionContext()->addCons
yhirano
2014/04/17 01:51:25
AFAIK addConsoleMessage doesn't require to be in a
yurys
2014/04/17 09:27:13
Correct, addConsoleMessage doesn't require V8 to b
|
if (!errorDetails.isEmpty()) { |
// FIXME: Include the line number which started the crypto operation. |
executionContext()->addConsoleMessage(JSMessageSource, ErrorMessageLevel, errorDetails); |
} |
- m_promiseResolver->reject(ScriptValue::createNull()); |
+ m_promiseResolver->reject(ScriptPromiseResolverWithContext::null()); |
} |
} |
@@ -76,7 +76,6 @@ void CryptoResultImpl::completeWithBuffer(const blink::WebArrayBuffer& buffer) |
ASSERT(!m_finished); |
if (canCompletePromise()) { |
- NewScriptState::Scope scope(m_scriptState.get()); |
m_promiseResolver->resolve(PassRefPtr<ArrayBuffer>(buffer)); |
} |
@@ -88,8 +87,7 @@ void CryptoResultImpl::completeWithBoolean(bool b) |
ASSERT(!m_finished); |
if (canCompletePromise()) { |
- NewScriptState::Scope scope(m_scriptState.get()); |
- m_promiseResolver->resolve(ScriptValue::createBoolean(b)); |
+ m_promiseResolver->resolve(ScriptPromiseResolverWithContext::Boolean(b)); |
} |
finish(); |
@@ -100,7 +98,6 @@ void CryptoResultImpl::completeWithKey(const blink::WebCryptoKey& key) |
ASSERT(!m_finished); |
if (canCompletePromise()) { |
- NewScriptState::Scope scope(m_scriptState.get()); |
m_promiseResolver->resolve(Key::create(key)); |
eroman
2014/04/16 17:35:05
If we remove canCompletePromise(), would it be saf
yhirano
2014/04/17 01:51:25
The ScriptWrappable constructor and ScriptWrappabl
|
} |
@@ -112,7 +109,6 @@ void CryptoResultImpl::completeWithKeyPair(const blink::WebCryptoKey& publicKey, |
ASSERT(!m_finished); |
if (canCompletePromise()) { |
- NewScriptState::Scope scope(m_scriptState.get()); |
m_promiseResolver->resolve(KeyPair::create(publicKey, privateKey)); |
} |
@@ -121,8 +117,7 @@ void CryptoResultImpl::completeWithKeyPair(const blink::WebCryptoKey& publicKey, |
CryptoResultImpl::CryptoResultImpl(ExecutionContext* context) |
: ContextLifecycleObserver(context) |
- , m_promiseResolver(ScriptPromiseResolver::create(context)) |
- , m_scriptState(NewScriptState::current(toIsolate(context))) |
+ , m_promiseResolver(ScriptPromiseResolverWithContext::create(NewScriptState::current(toIsolate(context)))) |
#if !ASSERT_DISABLED |
, m_owningThread(currentThread()) |
, m_finished(false) |
@@ -141,7 +136,6 @@ void CryptoResultImpl::finish() |
void CryptoResultImpl::clearPromiseResolver() |
{ |
m_promiseResolver.clear(); |
- m_scriptState.clear(); |
} |
void CryptoResultImpl::CheckValidThread() const |