Chromium Code Reviews| Index: Source/modules/crypto/CryptoResultImpl.cpp |
| diff --git a/Source/modules/crypto/CryptoResultImpl.cpp b/Source/modules/crypto/CryptoResultImpl.cpp |
| index dc0b04082cf18c07b7d5437715b08167a377a7aa..995e5209d84209e71bfca9c7f7ed512191f184f1 100644 |
| --- a/Source/modules/crypto/CryptoResultImpl.cpp |
| +++ b/Source/modules/crypto/CryptoResultImpl.cpp |
| @@ -62,9 +62,9 @@ static void rejectWithTypeError(const String& errorDetails, ScriptPromiseResolve |
| class CryptoResultImpl::Resolver final : public ScriptPromiseResolver { |
| public: |
| - static PassRefPtr<ScriptPromiseResolver> create(ScriptState* scriptState, CryptoResultImpl* result) |
| + static PassRefPtrWillBeRawPtr<ScriptPromiseResolver> create(ScriptState* scriptState, CryptoResultImpl* result) |
| { |
| - RefPtr<Resolver> resolver = adoptRef(new Resolver(scriptState, result)); |
| + RefPtrWillBeRawPtr<Resolver> resolver = adoptRefWillBeNoop(new Resolver(scriptState, result)); |
| resolver->suspendIfNeeded(); |
| resolver->keepAliveWhilePending(); |
| return resolver.release(); |
| @@ -78,6 +78,11 @@ public: |
| ScriptPromiseResolver::stop(); |
| } |
| + virtual void trace(Visitor* visitor) override |
| + { |
| + ScriptPromiseResolver::trace(visitor); |
| + } |
| + |
| private: |
| Resolver(ScriptState* scriptState, CryptoResultImpl* result) |
| : ScriptPromiseResolver(scriptState) |
| @@ -116,22 +121,23 @@ void CryptoResultImpl::clearResolver() |
| m_resolver = nullptr; |
| } |
| -PassRefPtr<CryptoResultImpl> CryptoResultImpl::create(ScriptState* scriptState) |
| +PassRefPtrWillBeRawPtr<CryptoResultImpl> CryptoResultImpl::create(ScriptState* scriptState) |
| { |
| - return adoptRef(new CryptoResultImpl(scriptState)); |
| + return adoptRefWillBeNoop(new CryptoResultImpl(scriptState)); |
| } |
| void CryptoResultImpl::completeWithError(WebCryptoErrorType errorType, const WebString& errorDetails) |
| { |
| if (m_resolver) { |
| + ScriptPromiseResolver* resolver = m_resolver; |
|
haraken
2014/12/16 13:52:45
This is unnecessary.
tasak
2014/12/17 08:40:08
Done.
|
| ExceptionCode ec = webCryptoErrorToExceptionCode(errorType); |
| // Handle TypeError separately, as it cannot be created using |
| // DOMException. |
| if (ec == V8TypeError) |
| - rejectWithTypeError(errorDetails, m_resolver); |
| + rejectWithTypeError(errorDetails, resolver); |
| else |
| - m_resolver->reject(DOMException::create(ec, errorDetails)); |
| + resolver->reject(DOMException::create(ec, errorDetails)); |
| } |
| clearResolver(); |
| } |