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

Unified Diff: Source/bindings/v8/CallbackPromiseAdapter.h

Issue 236713003: [ServiceWorker, PushMessaging] Use ScriptPromiseResolverWithContext. (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 side-by-side diff with in-line comments
Download patch
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);
};

Powered by Google App Engine
This is Rietveld 408576698