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

Side by Side Diff: Source/modules/crypto/CryptoResultImpl.h

Issue 780793002: Make CryptoResultImpl not to use WeakPtr. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 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 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 virtual void completeWithJson(const char* utf8Data, unsigned length) overrid e; 64 virtual void completeWithJson(const char* utf8Data, unsigned length) overrid e;
65 virtual void completeWithBoolean(bool) override; 65 virtual void completeWithBoolean(bool) override;
66 virtual void completeWithKey(const WebCryptoKey&) override; 66 virtual void completeWithKey(const WebCryptoKey&) override;
67 virtual void completeWithKeyPair(const WebCryptoKey& publicKey, const WebCry ptoKey& privateKey) override; 67 virtual void completeWithKeyPair(const WebCryptoKey& publicKey, const WebCry ptoKey& privateKey) override;
68 virtual bool cancelled() const override; 68 virtual bool cancelled() const override;
69 69
70 // If called after completion (including cancellation) will return an empty 70 // If called after completion (including cancellation) will return an empty
71 // ScriptPromise. 71 // ScriptPromise.
72 ScriptPromise promise(); 72 ScriptPromise promise();
73 73
74 void clearResolver();
eroman 2014/12/09 19:15:29 Make this function private.
tasak 2014/12/11 09:44:39 Done.
75
74 private: 76 private:
75 class WeakResolver; 77 class WeakResolver;
yhirano 2014/12/11 02:27:59 WeakResolver is no long "weak", so just Resolver i
tasak 2014/12/11 09:44:39 Done.
76 explicit CryptoResultImpl(ScriptState*); 78 explicit CryptoResultImpl(ScriptState*);
77 79
78 void cancel(); 80 void cancel();
79 81
80 WeakPtr<ScriptPromiseResolver> m_resolver; 82 // Since ScriptPromiseResolver destroys itself, we should not use RefPtr her e.
yhirano 2014/12/11 02:27:59 Please wrap comments in 80 columns.
tasak 2014/12/11 09:44:39 Done.
83 // So to avoid using stale pointer, m_resolver should be cleared after resol ving.
84 // FIXME: ScriptPromiseResolver should not be exported. Instead, use ScriptP romise.
85 RawPtr<ScriptPromiseResolver> m_resolver;
81 volatile int m_cancelled; 86 volatile int m_cancelled;
82 }; 87 };
83 88
84 } // namespace blink 89 } // namespace blink
85 90
86 #endif 91 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/modules/crypto/CryptoResultImpl.cpp » ('j') | Source/modules/crypto/CryptoResultImpl.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698