Index: components/domain_reliability/uploader.cc |
diff --git a/components/domain_reliability/uploader.cc b/components/domain_reliability/uploader.cc |
index f7d4cd9a44c5534b76c2e22c571ef0c825f7c272..d1fbceedfbce85dfbd9b81f794caba96230b5d44 100644 |
--- a/components/domain_reliability/uploader.cc |
+++ b/components/domain_reliability/uploader.cc |
@@ -58,9 +58,12 @@ class DomainReliabilityUploaderImpl |
net::URLRequestContextGetter>& url_request_context_getter) |
: time_(time), |
url_request_context_getter_(url_request_context_getter), |
- discard_uploads_(true) {} |
+ discard_uploads_(true), |
+ shutdown_(false) {} |
- ~DomainReliabilityUploaderImpl() override {} |
+ ~DomainReliabilityUploaderImpl() override { |
+ DCHECK(shutdown_); |
mmenke
2016/12/14 19:12:17
include base/logging.h
Julia Tuttle
2016/12/15 21:53:00
Done.
|
+ } |
// DomainReliabilityUploader implementation: |
void UploadReport( |
@@ -71,7 +74,7 @@ class DomainReliabilityUploaderImpl |
VLOG(1) << "Uploading report to " << upload_url; |
VLOG(2) << "Report JSON: " << report_json; |
- if (discard_uploads_) { |
+ if (discard_uploads_ || shutdown_) { |
VLOG(1) << "Discarding report instead of uploading."; |
UploadResult result; |
result.status = UploadResult::SUCCESS; |
@@ -107,6 +110,12 @@ class DomainReliabilityUploaderImpl |
VLOG(1) << "Setting discard_uploads to " << discard_uploads; |
} |
+ void Shutdown() override { |
+ DCHECK(!shutdown_); |
+ shutdown_ = true; |
+ upload_callbacks_.clear(); |
+ } |
+ |
// net::URLFetcherDelegate implementation: |
void OnURLFetchComplete(const net::URLFetcher* fetcher) override { |
DCHECK(fetcher); |
@@ -158,6 +167,7 @@ class DomainReliabilityUploaderImpl |
upload_callbacks_; |
mmenke
2016/12/14 19:12:17
A bit afield from this CL, but do you mind rename
Julia Tuttle
2016/12/15 21:53:00
Sure, I'll just call it uploads_.
|
bool discard_uploads_; |
base::TimeTicks last_upload_start_time_; |
+ bool shutdown_; |
}; |
} // namespace |
@@ -190,4 +200,6 @@ int DomainReliabilityUploader::GetURLRequestUploadDepth( |
return data->depth(); |
} |
+void DomainReliabilityUploader::Shutdown() {} |
+ |
} // namespace domain_reliability |