| Index: content/browser/download/download_resource_handler.cc
|
| diff --git a/content/browser/download/download_resource_handler.cc b/content/browser/download/download_resource_handler.cc
|
| index 0a19163c9c3f8ae40a9532e13780c89acac15fab..073e25ce16a5597c36c4c182ce30512b5872575b 100644
|
| --- a/content/browser/download/download_resource_handler.cc
|
| +++ b/content/browser/download/download_resource_handler.cc
|
| @@ -383,7 +383,10 @@ void DownloadResourceHandler::OnResponseCompleted(
|
| // to a user action.
|
| // TODO(ahendrickson) -- Find a better set of codes to use here, as
|
| // CANCELED/ERR_ABORTED can occur for reasons other than user cancel.
|
| - reason = DOWNLOAD_INTERRUPT_REASON_USER_CANCELED;
|
| + if (net::IsCertStatusError(request()->ssl_info().cert_status))
|
| + reason = DOWNLOAD_INTERRUPT_REASON_SERVER_CERT_PROBLEM;
|
| + else
|
| + reason = DOWNLOAD_INTERRUPT_REASON_USER_CANCELED;
|
| }
|
|
|
| if (status.is_success() &&
|
| @@ -414,6 +417,10 @@ void DownloadResourceHandler::OnResponseCompleted(
|
| // If we haven't received data when we get this error, we won't.
|
| reason = DOWNLOAD_INTERRUPT_REASON_SERVER_NO_RANGE;
|
| break;
|
| + case net::HTTP_UNAUTHORIZED:
|
| + // Server didn't authorize this request.
|
| + reason = DOWNLOAD_INTERRUPT_REASON_SERVER_UNAUTHORIZED;
|
| + break;
|
| default: // All other errors.
|
| // Redirection and informational codes should have been handled earlier
|
| // in the stack.
|
|
|