| Index: chrome/browser/renderer_host/resource_dispatcher_host.cc
|
| ===================================================================
|
| --- chrome/browser/renderer_host/resource_dispatcher_host.cc (revision 9948)
|
| +++ chrome/browser/renderer_host/resource_dispatcher_host.cc (working copy)
|
| @@ -202,7 +202,8 @@
|
|
|
| handler->OnResponseCompleted(request_id, URLRequestStatus(
|
| URLRequestStatus::FAILED,
|
| - net::ERR_ABORTED));
|
| + net::ERR_ABORTED),
|
| + std::string()); // No security info necessary.
|
| return true;
|
| }
|
|
|
| @@ -221,7 +222,9 @@
|
| receiver->Send(new ViewMsg_Resource_RequestComplete(
|
| render_view_id,
|
| request_id,
|
| - URLRequestStatus(URLRequestStatus::FAILED, net::ERR_ABORTED)));
|
| + URLRequestStatus(URLRequestStatus::FAILED, net::ERR_ABORTED),
|
| + std::string())); // No security info needed, connection was not
|
| + // established.
|
| return;
|
| }
|
|
|
| @@ -916,7 +919,7 @@
|
| if (memory_cost > max_outstanding_requests_cost_per_process_) {
|
| // We call "CancelWithError()" as a way of setting the URLRequest's
|
| // status -- it has no effect beyond this, since the request hasn't started.
|
| - request->CancelWithError(net::ERR_INSUFFICIENT_RESOURCES);
|
| + request->SimulateError(net::ERR_INSUFFICIENT_RESOURCES);
|
|
|
| // TODO(eroman): this is kinda funky -- we insert the unstarted request into
|
| // |pending_requests_| simply to please OnResponseCompleted().
|
| @@ -1118,8 +1121,19 @@
|
| RESOURCE_LOG("OnResponseCompleted: " << request->url().spec());
|
| ExtraRequestInfo* info = ExtraInfoForRequest(request);
|
|
|
| + std::string security_info;
|
| + const net::SSLInfo& ssl_info = request->ssl_info();
|
| + if (ssl_info.cert != NULL) {
|
| + int cert_id = CertStore::GetSharedInstance()->
|
| + StoreCert(ssl_info.cert, info->render_process_host_id);
|
| + security_info = SSLManager::SerializeSecurityInfo(cert_id,
|
| + ssl_info.cert_status,
|
| + ssl_info.security_bits);
|
| + }
|
| +
|
| if (info->resource_handler->OnResponseCompleted(info->request_id,
|
| - request->status())) {
|
| + request->status(),
|
| + security_info)) {
|
| NotifyResponseCompleted(request, info->render_process_host_id);
|
|
|
| // The request is complete so we can remove it.
|
|
|