Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(455)

Unified Diff: content/browser/loader/resource_dispatcher_host_impl.cc

Issue 2497223002: Introduce a new ResourceRequesterInfo type for NavigationPreload. (Closed)
Patch Set: incorporated yhirano's comment Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/loader/resource_dispatcher_host_impl.cc
diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
index d70afa71e4951628f7a50d32a6a40b7f70dcaad2..9e3760be55c0ac1969cf04e75b78cefe23638d51 100644
--- a/content/browser/loader/resource_dispatcher_host_impl.cc
+++ b/content/browser/loader/resource_dispatcher_host_impl.cc
@@ -1067,7 +1067,7 @@ void ResourceDispatcherHostImpl::OnRequestResourceInternal(
const ResourceRequest& request_data,
mojom::URLLoaderAssociatedRequest mojo_request,
mojom::URLLoaderClientAssociatedPtr url_loader_client) {
- DCHECK(requester_info->IsRenderer());
+ DCHECK(requester_info->IsRenderer() || requester_info->IsNavigationPreload());
// TODO(pkasting): Remove ScopedTracker below once crbug.com/477117 is fixed.
tracked_objects::ScopedTracker tracking_profile(
FROM_HERE_WITH_EXPLICIT_FUNCTION(
@@ -1273,11 +1273,12 @@ void ResourceDispatcherHostImpl::BeginRequest(
int route_id,
mojom::URLLoaderAssociatedRequest mojo_request,
mojom::URLLoaderClientAssociatedPtr url_loader_client) {
- DCHECK(requester_info->IsRenderer());
+ DCHECK(requester_info->IsRenderer() || requester_info->IsNavigationPreload());
int child_id = requester_info->child_id();
// Reject request id that's currently in use.
if (IsRequestIDInUse(GlobalRequestID(child_id, request_id))) {
+ DCHECK(requester_info->IsRenderer());
bad_message::ReceivedBadMessage(requester_info->filter(),
bad_message::RDH_INVALID_REQUEST_ID);
return;
@@ -1289,6 +1290,7 @@ void ResourceDispatcherHostImpl::BeginRequest(
IsResourceTypeFrame(request_data.resource_type);
if (is_navigation_stream_request &&
!request_data.resource_body_stream_url.SchemeIs(url::kBlobScheme)) {
+ DCHECK(requester_info->IsRenderer());
bad_message::ReceivedBadMessage(requester_info->filter(),
bad_message::RDH_INVALID_URL);
return;
@@ -1297,6 +1299,7 @@ void ResourceDispatcherHostImpl::BeginRequest(
// Reject invalid priority.
if (request_data.priority < net::MINIMUM_PRIORITY ||
request_data.priority > net::MAXIMUM_PRIORITY) {
+ DCHECK(requester_info->IsRenderer());
bad_message::ReceivedBadMessage(requester_info->filter(),
bad_message::RDH_INVALID_PRIORITY);
return;
@@ -1378,8 +1381,9 @@ void ResourceDispatcherHostImpl::ContinuePendingBeginRequest(
mojom::URLLoaderClientAssociatedPtr url_loader_client,
bool continue_request,
int error_code) {
- DCHECK(requester_info->IsRenderer());
+ DCHECK(requester_info->IsRenderer() || requester_info->IsNavigationPreload());
if (!continue_request) {
+ DCHECK(requester_info->IsRenderer());
// TODO(ananta): Find a way to specify the right error code here. Passing
// in a non-content error code is not safe.
bad_message::ReceivedBadMessage(requester_info->filter(),
@@ -1613,7 +1617,7 @@ ResourceDispatcherHostImpl::CreateResourceHandler(
ResourceContext* resource_context,
mojom::URLLoaderAssociatedRequest mojo_request,
mojom::URLLoaderClientAssociatedPtr url_loader_client) {
- DCHECK(requester_info->IsRenderer());
+ DCHECK(requester_info->IsRenderer() || requester_info->IsNavigationPreload());
// TODO(pkasting): Remove ScopedTracker below once crbug.com/456331 is fixed.
tracked_objects::ScopedTracker tracking_profile(
FROM_HERE_WITH_EXPLICIT_FUNCTION(
@@ -1623,6 +1627,7 @@ ResourceDispatcherHostImpl::CreateResourceHandler(
if (sync_result_handler) {
// download_to_file is not supported for synchronous requests.
if (request_data.download_to_file) {
+ DCHECK(requester_info->IsRenderer());
bad_message::ReceivedBadMessage(requester_info->filter(),
bad_message::RDH_BAD_DOWNLOAD);
return std::unique_ptr<ResourceHandler>();

Powered by Google App Engine
This is Rietveld 408576698