| Index: third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp
|
| diff --git a/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp b/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp
|
| index e17a24a7547d7b7344346c6ae243950ca2102002..84ea48e3072389bc35b764b69224bc6f97a586ec 100644
|
| --- a/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp
|
| +++ b/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp
|
| @@ -547,8 +547,19 @@ Resource* ResourceFetcher::RequestResource(
|
| FetchRequest& request,
|
| const ResourceFactory& factory,
|
| const SubstituteData& substitute_data) {
|
| - unsigned long identifier = CreateUniqueIdentifier();
|
| ResourceRequest& resource_request = request.MutableResourceRequest();
|
| + int browser_generated_request_id =
|
| + resource_request.BrowserGeneratedRequestId();
|
| +
|
| + // If set browser_generated_request_id should be a negative number
|
| + DCHECK_LE(browser_generated_request_id, 0);
|
| + // We use positive numbers for blink generated fetch identifiers so we can
|
| + // distinguish between them and make sure there are no collisions.
|
| + unsigned long identifier =
|
| + browser_generated_request_id
|
| + ? static_cast<unsigned long>(browser_generated_request_id) &
|
| + 0xFFFFFFFF
|
| + : CreateUniqueIdentifier();
|
| network_instrumentation::ScopedResourceLoadTracker
|
| scoped_resource_load_tracker(identifier, resource_request);
|
| SCOPED_BLINK_UMA_HISTOGRAM_TIMER("Blink.Fetch.RequestResourceTime");
|
|
|