Index: content/browser/service_worker/service_worker_read_from_cache_job.cc |
diff --git a/content/browser/service_worker/service_worker_read_from_cache_job.cc b/content/browser/service_worker/service_worker_read_from_cache_job.cc |
index eddbcd42f82893e19d0e211865e0c4ce3372663e..5189a86c2bde91f19dabc33d6ec5a03161d9e04c 100644 |
--- a/content/browser/service_worker/service_worker_read_from_cache_job.cc |
+++ b/content/browser/service_worker/service_worker_read_from_cache_job.cc |
@@ -6,6 +6,7 @@ |
#include "content/browser/service_worker/service_worker_context_core.h" |
#include "content/browser/service_worker/service_worker_disk_cache.h" |
+#include "content/browser/service_worker/service_worker_histograms.h" |
#include "net/base/io_buffer.h" |
#include "net/base/net_errors.h" |
#include "net/http/http_request_headers.h" |
@@ -134,6 +135,8 @@ void ServiceWorkerReadFromCacheJob::OnReadInfoComplete(int result) { |
scoped_refptr<ServiceWorkerReadFromCacheJob> protect(this); |
if (!http_info_io_buffer_->http_info) { |
DCHECK(result < 0); |
+ ServiceWorkerHistograms::CountReadResponseResult( |
+ ServiceWorkerHistograms::READ_HEADERS_ERROR); |
NotifyDone(net::URLRequestStatus(net::URLRequestStatus::FAILED, result)); |
return; |
} |
@@ -170,12 +173,18 @@ void ServiceWorkerReadFromCacheJob::SetupRangeResponse(int resource_size) { |
} |
void ServiceWorkerReadFromCacheJob::OnReadComplete(int result) { |
- if (result == 0) |
+ ServiceWorkerHistograms::ReadResponseResult check_result; |
+ if (result == 0) { |
+ check_result = ServiceWorkerHistograms::READ_OK; |
NotifyDone(net::URLRequestStatus()); |
- else if (result < 0) |
+ } else if (result < 0) { |
+ check_result = ServiceWorkerHistograms::READ_DATA_ERROR; |
NotifyDone(net::URLRequestStatus(net::URLRequestStatus::FAILED, result)); |
- else |
+ } else { |
+ check_result = ServiceWorkerHistograms::READ_OK; |
SetStatus(net::URLRequestStatus()); // Clear the IO_PENDING status |
+ } |
+ ServiceWorkerHistograms::CountReadResponseResult(check_result); |
NotifyReadComplete(result); |
} |