Index: content/renderer/media/rtc_certificate_generator.cc |
diff --git a/content/renderer/media/rtc_certificate_generator.cc b/content/renderer/media/rtc_certificate_generator.cc |
index fe43be4169f6f63a05955a0fb24a653aeae7faa1..263ba5fd5d1c2bea4cce898b49dadcbca5dcb3f6 100644 |
--- a/content/renderer/media/rtc_certificate_generator.cc |
+++ b/content/renderer/media/rtc_certificate_generator.cc |
@@ -8,6 +8,7 @@ |
#include <utility> |
#include "base/macros.h" |
+#include "base/memory/ptr_util.h" |
#include "content/renderer/media/peer_connection_identity_store.h" |
#include "content/renderer/media/rtc_certificate.h" |
#include "content/renderer/media/webrtc/peer_connection_dependency_factory.h" |
@@ -56,11 +57,11 @@ class RTCCertificateIdentityObserver |
const blink::WebRTCKeyParams& key_params, |
const GURL& url, |
const GURL& first_party_for_cookies, |
- blink::WebPassOwnPtr<blink::WebRTCCertificateCallback> observer) { |
+ std::unique_ptr<blink::WebRTCCertificateCallback> observer) { |
DCHECK(main_thread_->BelongsToCurrentThread()); |
DCHECK(!observer_) << "Already have a RequestIdentity in progress."; |
key_params_ = key_params; |
- observer_ = observer; |
+ observer_ = std::move(observer); |
DCHECK(observer_); |
// Identity request must be performed on the WebRTC signaling thread. |
signaling_thread_->PostTask(FROM_HERE, base::Bind( |
@@ -107,16 +108,19 @@ class RTCCertificateIdentityObserver |
DCHECK(observer_); |
rtc::scoped_refptr<rtc::RTCCertificate> certificate = |
rtc::RTCCertificate::Create(std::move(identity)); |
- main_thread_->PostTask(FROM_HERE, base::Bind( |
- &RTCCertificateIdentityObserver::DoCallbackOnMainThread, |
- this, new RTCCertificate(key_params_, certificate))); |
+ main_thread_->PostTask( |
+ FROM_HERE, |
+ base::Bind(&RTCCertificateIdentityObserver::DoCallbackOnMainThread, |
+ this, base::Passed(base::WrapUnique( |
+ new RTCCertificate(key_params_, certificate))))); |
} |
- void DoCallbackOnMainThread(blink::WebRTCCertificate* certificate) { |
+ void DoCallbackOnMainThread( |
+ std::unique_ptr<blink::WebRTCCertificate> certificate) { |
DCHECK(main_thread_->BelongsToCurrentThread()); |
DCHECK(observer_); |
if (certificate) |
- observer_->onSuccess(blink::adoptWebPtr(certificate)); |
+ observer_->onSuccess(std::move(certificate)); |
else |
observer_->onError(); |
observer_.reset(); |
@@ -139,7 +143,7 @@ void RTCCertificateGenerator::generateCertificate( |
const blink::WebRTCKeyParams& key_params, |
const blink::WebURL& url, |
const blink::WebURL& first_party_for_cookies, |
- blink::WebPassOwnPtr<blink::WebRTCCertificateCallback> observer) { |
+ std::unique_ptr<blink::WebRTCCertificateCallback> observer) { |
DCHECK(isSupportedKeyParams(key_params)); |
#if defined(ENABLE_WEBRTC) |
@@ -156,8 +160,8 @@ void RTCCertificateGenerator::generateCertificate( |
new rtc::RefCountedObject<RTCCertificateIdentityObserver>( |
main_thread, signaling_thread)); |
// |identity_observer| lives until request has completed. |
- identity_observer->RequestIdentity( |
- key_params, url, first_party_for_cookies, observer); |
+ identity_observer->RequestIdentity(key_params, url, first_party_for_cookies, |
+ std::move(observer)); |
#else |
observer->onError(); |
#endif |