OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc
e-loading | 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc
e-loading |
6 | 6 |
7 #include "content/browser/loader/resource_dispatcher_host_impl.h" | 7 #include "content/browser/loader/resource_dispatcher_host_impl.h" |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 #include <vector> | 10 #include <vector> |
(...skipping 1106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1117 | 1117 |
1118 // The RedirectToFileResourceHandler depends on being next in the chain. | 1118 // The RedirectToFileResourceHandler depends on being next in the chain. |
1119 if (request_data.download_to_file) { | 1119 if (request_data.download_to_file) { |
1120 handler.reset( | 1120 handler.reset( |
1121 new RedirectToFileResourceHandler(handler.Pass(), request, this)); | 1121 new RedirectToFileResourceHandler(handler.Pass(), request, this)); |
1122 } | 1122 } |
1123 | 1123 |
1124 // Install a CrossSiteResourceHandler for all main frame requests. This will | 1124 // Install a CrossSiteResourceHandler for all main frame requests. This will |
1125 // let us check whether a transfer is required and pause for the unload | 1125 // let us check whether a transfer is required and pause for the unload |
1126 // handler either if so or if a cross-process navigation is already under way. | 1126 // handler either if so or if a cross-process navigation is already under way. |
1127 if (request_data.resource_type == ResourceType::MAIN_FRAME && | 1127 if ((request_data.resource_type == ResourceType::MAIN_FRAME || |
| 1128 request_data.resource_type == ResourceType::SUB_FRAME) && |
1128 process_type == PROCESS_TYPE_RENDERER) { | 1129 process_type == PROCESS_TYPE_RENDERER) { |
1129 handler.reset(new CrossSiteResourceHandler(handler.Pass(), request)); | 1130 handler.reset(new CrossSiteResourceHandler(handler.Pass(), request)); |
1130 } | 1131 } |
1131 | 1132 |
1132 // Insert a buffered event handler before the actual one. | 1133 // Insert a buffered event handler before the actual one. |
1133 handler.reset( | 1134 handler.reset( |
1134 new BufferedResourceHandler(handler.Pass(), this, request)); | 1135 new BufferedResourceHandler(handler.Pass(), this, request)); |
1135 | 1136 |
1136 ScopedVector<ResourceThrottle> throttles; | 1137 ScopedVector<ResourceThrottle> throttles; |
1137 if (delegate_) { | 1138 if (delegate_) { |
(...skipping 788 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1926 if ((load_flags & net::LOAD_REPORT_RAW_HEADERS) | 1927 if ((load_flags & net::LOAD_REPORT_RAW_HEADERS) |
1927 && !policy->CanReadRawCookies(child_id)) { | 1928 && !policy->CanReadRawCookies(child_id)) { |
1928 VLOG(1) << "Denied unauthorized request for raw headers"; | 1929 VLOG(1) << "Denied unauthorized request for raw headers"; |
1929 load_flags &= ~net::LOAD_REPORT_RAW_HEADERS; | 1930 load_flags &= ~net::LOAD_REPORT_RAW_HEADERS; |
1930 } | 1931 } |
1931 | 1932 |
1932 return load_flags; | 1933 return load_flags; |
1933 } | 1934 } |
1934 | 1935 |
1935 } // namespace content | 1936 } // namespace content |
OLD | NEW |