Index: chrome/browser/chrome_content_browser_client.cc |
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc |
index bff38f9611425162fafc5835612906d973cb3080..7a20e822bbf9ba38df512aba0fef278ec23abb7f 100644 |
--- a/chrome/browser/chrome_content_browser_client.cc |
+++ b/chrome/browser/chrome_content_browser_client.cc |
@@ -2386,6 +2386,7 @@ void ChromeContentBrowserClient::AllowCertificateError( |
void ChromeContentBrowserClient::SelectClientCertificate( |
content::WebContents* web_contents, |
net::SSLCertRequestInfo* cert_request_info, |
+ net::CertificateList client_certs, |
std::unique_ptr<content::ClientCertificateDelegate> delegate) { |
prerender::PrerenderContents* prerender_contents = |
prerender::PrerenderContents::FromWebContents(web_contents); |
@@ -2413,12 +2414,10 @@ void ChromeContentBrowserClient::SelectClientCertificate( |
base::DictionaryValue* filter_dict = |
static_cast<base::DictionaryValue*>(filter.get()); |
- const std::vector<scoped_refptr<net::X509Certificate> >& |
- all_client_certs = cert_request_info->client_certs; |
- for (size_t i = 0; i < all_client_certs.size(); ++i) { |
- if (CertMatchesFilter(*all_client_certs[i].get(), *filter_dict)) { |
+ for (size_t i = 0; i < client_certs.size(); ++i) { |
+ if (CertMatchesFilter(*client_certs[i].get(), *filter_dict)) { |
// Use the first certificate that is matched by the filter. |
- delegate->ContinueWithCertificate(all_client_certs[i].get()); |
+ delegate->ContinueWithCertificate(client_certs[i].get()); |
return; |
} |
} |
@@ -2428,6 +2427,7 @@ void ChromeContentBrowserClient::SelectClientCertificate( |
} |
chrome::ShowSSLClientCertificateSelector(web_contents, cert_request_info, |
+ std::move(client_certs), |
std::move(delegate)); |
} |