Index: net/quic/crypto/proof_verifier_chromium.cc |
diff --git a/net/quic/crypto/proof_verifier_chromium.cc b/net/quic/crypto/proof_verifier_chromium.cc |
index 096374a747255b451000cf3afccf034083a13368..e59f291253a090d81286504a751f8f2fb9540c9b 100644 |
--- a/net/quic/crypto/proof_verifier_chromium.cc |
+++ b/net/quic/crypto/proof_verifier_chromium.cc |
@@ -76,7 +76,7 @@ class ProofVerifierChromium::Job { |
const std::string& signature, |
std::string* error_details, |
std::unique_ptr<ProofVerifyDetails>* verify_details, |
- ProofVerifierCallback* callback); |
+ std::unique_ptr<ProofVerifierCallback> callback); |
private: |
enum State { |
@@ -180,10 +180,9 @@ QuicAsyncStatus ProofVerifierChromium::Job::VerifyProof( |
const string& signature, |
std::string* error_details, |
std::unique_ptr<ProofVerifyDetails>* verify_details, |
- ProofVerifierCallback* callback) { |
+ std::unique_ptr<ProofVerifierCallback> callback) { |
DCHECK(error_details); |
DCHECK(verify_details); |
- DCHECK(callback); |
rjshade
2016/07/06 20:09:34
Not sure about this removal, but the following tes
Ryan Hamilton
2016/07/07 00:10:35
Hm. That sounds dodgy. DO you have a failure log?
|
error_details->clear(); |
@@ -246,7 +245,7 @@ QuicAsyncStatus ProofVerifierChromium::Job::VerifyProof( |
*verify_details = std::move(verify_details_); |
return QUIC_SUCCESS; |
case ERR_IO_PENDING: |
- callback_.reset(callback); |
+ callback_ = std::move(callback); |
return QUIC_PENDING; |
default: |
*error_details = error_details_; |
@@ -491,7 +490,7 @@ QuicAsyncStatus ProofVerifierChromium::VerifyProof( |
const ProofVerifyContext* verify_context, |
std::string* error_details, |
std::unique_ptr<ProofVerifyDetails>* verify_details, |
- ProofVerifierCallback* callback) { |
+ std::unique_ptr<ProofVerifierCallback> callback) { |
if (!verify_context) { |
*error_details = "Missing context"; |
return QUIC_FAILURE; |
@@ -504,7 +503,7 @@ QuicAsyncStatus ProofVerifierChromium::VerifyProof( |
chromium_context->cert_verify_flags, chromium_context->net_log)); |
QuicAsyncStatus status = job->VerifyProof( |
hostname, port, server_config, quic_version, chlo_hash, certs, cert_sct, |
- signature, error_details, verify_details, callback); |
+ signature, error_details, verify_details, std::move(callback)); |
if (status == QUIC_PENDING) { |
active_jobs_.insert(job.release()); |
} |