OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "content/renderer/render_frame_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 5042 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5053 | 5053 |
5054 // Standard URLs must match the reported origin, when it is not unique. | 5054 // Standard URLs must match the reported origin, when it is not unique. |
5055 // This check is very similar to RenderFrameHostImpl::CanCommitOrigin, but | 5055 // This check is very similar to RenderFrameHostImpl::CanCommitOrigin, but |
5056 // adapted to the renderer process side. | 5056 // adapted to the renderer process side. |
5057 if (!params.origin.unique() && params.url.IsStandard() && | 5057 if (!params.origin.unique() && params.url.IsStandard() && |
5058 render_view_->GetWebkitPreferences().web_security_enabled) { | 5058 render_view_->GetWebkitPreferences().web_security_enabled) { |
5059 // Exclude file: URLs when settings allow them access any origin. | 5059 // Exclude file: URLs when settings allow them access any origin. |
5060 if (params.origin.scheme() != url::kFileScheme || | 5060 if (params.origin.scheme() != url::kFileScheme || |
5061 !render_view_->GetWebkitPreferences() | 5061 !render_view_->GetWebkitPreferences() |
5062 .allow_universal_access_from_file_urls) { | 5062 .allow_universal_access_from_file_urls) { |
5063 base::debug::SetCrashKeyValue("origin_mismatch_url", params.url.spec()); | |
5064 base::debug::SetCrashKeyValue("origin_mismatch_origin", | |
5065 params.origin.Serialize()); | |
5066 base::debug::SetCrashKeyValue("origin_mismatch_transition", | |
5067 base::IntToString(params.transition)); | |
5068 base::debug::SetCrashKeyValue("origin_mismatch_redirects", | |
5069 base::IntToString(params.redirects.size())); | |
5070 base::debug::SetCrashKeyValue( | |
5071 "origin_mismatch_same_page", | |
5072 base::IntToString(params.was_within_same_document)); | |
5073 CHECK(params.origin.IsSamePhysicalOriginWith(url::Origin(params.url))) | 5063 CHECK(params.origin.IsSamePhysicalOriginWith(url::Origin(params.url))) |
5074 << " url:" << params.url << " origin:" << params.origin; | 5064 << " url:" << params.url << " origin:" << params.origin; |
5075 } | 5065 } |
5076 } | 5066 } |
5077 | 5067 |
5078 // This message needs to be sent before any of allowScripts(), | 5068 // This message needs to be sent before any of allowScripts(), |
5079 // allowImages(), allowPlugins() is called for the new page, so that when | 5069 // allowImages(), allowPlugins() is called for the new page, so that when |
5080 // these functions send a ViewHostMsg_ContentBlocked message, it arrives | 5070 // these functions send a ViewHostMsg_ContentBlocked message, it arrives |
5081 // after the FrameHostMsg_DidCommitProvisionalLoad message. | 5071 // after the FrameHostMsg_DidCommitProvisionalLoad message. |
5082 Send(new FrameHostMsg_DidCommitProvisionalLoad(routing_id_, params)); | 5072 Send(new FrameHostMsg_DidCommitProvisionalLoad(routing_id_, params)); |
(...skipping 1915 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6998 policy(info.default_policy), | 6988 policy(info.default_policy), |
6999 replaces_current_history_item(info.replaces_current_history_item), | 6989 replaces_current_history_item(info.replaces_current_history_item), |
7000 history_navigation_in_new_child_frame( | 6990 history_navigation_in_new_child_frame( |
7001 info.is_history_navigation_in_new_child_frame), | 6991 info.is_history_navigation_in_new_child_frame), |
7002 client_redirect(info.is_client_redirect), | 6992 client_redirect(info.is_client_redirect), |
7003 cache_disabled(info.is_cache_disabled), | 6993 cache_disabled(info.is_cache_disabled), |
7004 form(info.form), | 6994 form(info.form), |
7005 source_location(info.source_location) {} | 6995 source_location(info.source_location) {} |
7006 | 6996 |
7007 } // namespace content | 6997 } // namespace content |
OLD | NEW |