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

Unified Diff: Source/platform/CryptoResult.h

Issue 1228373006: Reliably cancel in-progress CryptoResult(Impl) upon shutdown. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebased upto r199421 and use it for (again) heap-based CryptoResults Created 5 years, 5 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/platform/CryptoResult.h
diff --git a/Source/platform/CryptoResult.h b/Source/platform/CryptoResult.h
index 3ccff2e211e705773d5ab873db418b2080aa680b..7e63f4c9f757d43baccd9fa596cdf1cf643b0a2e 100644
--- a/Source/platform/CryptoResult.h
+++ b/Source/platform/CryptoResult.h
@@ -37,7 +37,7 @@
namespace blink {
// Receives notification of completion of the crypto operation.
-class CryptoResult : public ThreadSafeRefCounted<CryptoResult> {
+class CryptoResult : public ThreadSafeRefCountedWillBeGarbageCollectedFinalized<CryptoResult> {
public:
virtual ~CryptoResult() { }
@@ -47,14 +47,14 @@ public:
virtual void completeWithBoolean(bool) = 0;
virtual void completeWithKey(const WebCryptoKey&) = 0;
virtual void completeWithKeyPair(const WebCryptoKey& publicKey, const WebCryptoKey& privateKey) = 0;
- virtual bool cancelled() const = 0;
- WebCryptoResult result()
- {
- return WebCryptoResult(this);
- }
+ virtual bool registerResult(WebCryptoResult*) = 0;
+ virtual void unregisterResult(WebCryptoResult*) = 0;
+ virtual bool isOwnerResult(WebCryptoResult*) const = 0;
+
+ DEFINE_INLINE_VIRTUAL_TRACE() { }
};
} // namespace blink
-#endif
+#endif // CryptoResult_h

Powered by Google App Engine
This is Rietveld 408576698