Index: net/url_request/url_request.cc |
diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc |
index 099b57b322344d4fafa49420301a288035a48249..2b20df40c2a949b6472336538654cc1c57c81926 100644 |
--- a/net/url_request/url_request.cc |
+++ b/net/url_request/url_request.cc |
@@ -43,7 +43,8 @@ void StripPostSpecificHeaders(net::HttpRequestHeaders* headers) { |
} |
// This counter keeps track of the identifiers used for URL requests so far. |
-uint64 g_next_url_request_identifier = 0; |
+// 0 is reserved to represent an invalid ID. |
+uint64 g_next_url_request_identifier = 1; |
// This lock protects g_next_url_request_identifier. |
base::Lock g_next_url_request_identifier_lock; |
@@ -131,6 +132,9 @@ URLRequest::URLRequest(const GURL& url, Delegate* delegate) |
} |
URLRequest::~URLRequest() { |
+ if (context_ && context_->network_delegate()) |
+ context_->network_delegate()->NotifyURLRequestDestroyed(this); |
+ |
if (before_request_callback_) |
before_request_callback_->Cancel(); |