Chromium Code Reviews| Index: Source/bindings/v8/CallbackPromiseAdapter.h |
| diff --git a/Source/bindings/v8/CallbackPromiseAdapter.h b/Source/bindings/v8/CallbackPromiseAdapter.h |
| index af2216728f4ce3a33847aad980f6bb4e410bde02..2d09e8220ed0d94dee0fc3721e2cc9802728df0a 100644 |
| --- a/Source/bindings/v8/CallbackPromiseAdapter.h |
| +++ b/Source/bindings/v8/CallbackPromiseAdapter.h |
| @@ -31,8 +31,7 @@ |
| #ifndef CallbackPromiseAdapter_h |
| #define CallbackPromiseAdapter_h |
| -#include "bindings/v8/NewScriptState.h" |
| -#include "bindings/v8/ScriptPromiseResolver.h" |
| +#include "bindings/v8/ScriptPromiseResolverWithContext.h" |
| #include "public/platform/WebCallbacks.h" |
| namespace WebCore { |
| @@ -64,26 +63,26 @@ namespace WebCore { |
| template<typename S, typename T> |
| class CallbackPromiseAdapter FINAL : public blink::WebCallbacks<typename S::WebType, typename T::WebType> { |
| public: |
| - CallbackPromiseAdapter(PassRefPtr<ScriptPromiseResolver> resolver, ExecutionContext* context) |
| + CallbackPromiseAdapter(PassRefPtr<ScriptPromiseResolverWithContext> resolver) |
| : m_resolver(resolver) |
| - , m_scriptState(NewScriptState::current(toIsolate(context))) |
| { |
| } |
| virtual ~CallbackPromiseAdapter() { } |
| virtual void onSuccess(typename S::WebType* result) OVERRIDE |
| { |
| - NewScriptState::Scope scope(m_scriptState.get()); |
| - m_resolver->resolve(S::from(m_scriptState.get(), result)); |
| + if (!m_resolver->scriptState()) |
| + return; |
|
haraken
2014/04/14 12:13:17
This will change existing behavior in a case where
yhirano
2014/04/14 12:37:23
Yes, this CL changes the behavior as written in th
yhirano
2014/04/15 01:02:17
I made ScriptPromiseResolver::m_scriptState const
|
| + m_resolver->resolve(S::from(m_resolver->scriptState(), result)); |
| } |
| virtual void onError(typename T::WebType* error) OVERRIDE |
| { |
| - NewScriptState::Scope scope(m_scriptState.get()); |
| - m_resolver->reject(T::from(m_scriptState.get(), error)); |
| + if (!m_resolver->scriptState()) |
| + return; |
|
haraken
2014/04/14 12:13:17
Ditto.
|
| + m_resolver->reject(T::from(m_resolver->scriptState(), error)); |
| } |
| private: |
| - RefPtr<ScriptPromiseResolver> m_resolver; |
| - RefPtr<NewScriptState> m_scriptState; |
| + RefPtr<ScriptPromiseResolverWithContext> m_resolver; |
| WTF_MAKE_NONCOPYABLE(CallbackPromiseAdapter); |
| }; |