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

Unified Diff: components/error_page/common/localized_error.cc

Issue 2425663002: Add an error page for resources blocked via XSS Auditor. (Closed)
Patch Set: Test. Created 4 years, 1 month 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
« no previous file with comments | « no previous file | components/error_page/renderer/net_error_helper_core.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/error_page/common/localized_error.cc
diff --git a/components/error_page/common/localized_error.cc b/components/error_page/common/localized_error.cc
index 1d05b90b92b2869b9fc765af7d9d7027bcf82b45..ef5bf3c5b006634d5e0cf099ad5bda4a05ba25ec 100644
--- a/components/error_page/common/localized_error.cc
+++ b/components/error_page/common/localized_error.cc
@@ -30,6 +30,7 @@
#include "net/base/net_errors.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/webui/web_ui_util.h"
+#include "url/origin.h"
#if defined(OS_WIN)
#include "base/win/windows_version.h"
@@ -65,6 +66,7 @@ enum NAV_SUGGESTIONS {
SUGGEST_COMPLETE_SETUP = 1 << 11,
// Reload page suggestion for pages created by a post.
SUGGEST_REPOST_RELOAD = 1 << 12,
+ SUGGEST_NAVIGATE_TO_ORIGIN = 1 << 13,
};
enum SHOW_BUTTONS {
@@ -269,6 +271,12 @@ const LocalizedErrorMap net_error_options[] = {
SUGGEST_DISABLE_EXTENSION,
SHOW_BUTTON_RELOAD,
},
+ {net::ERR_BLOCKED_BY_XSS_AUDITOR,
+ IDS_ERRORPAGES_HEADING_PAGE_NOT_WORKING,
+ IDS_ERRORPAGES_SUMMARY_BLOCKED_BY_XSS_AUDITOR,
+ SUGGEST_NAVIGATE_TO_ORIGIN,
+ SHOW_NO_BUTTONS,
+ },
{net::ERR_NETWORK_CHANGED,
IDS_ERRORPAGES_HEADING_CONNECTION_INTERRUPTED,
IDS_ERRORPAGES_SUMMARY_NETWORK_CHANGED,
@@ -614,6 +622,23 @@ void GetSuggestionsSummaryList(int error_code,
}
DCHECK(!IsSuggested(suggestions, SUGGEST_REPOST_RELOAD));
+ if (IsOnlySuggestion(suggestions, SUGGEST_NAVIGATE_TO_ORIGIN)) {
+ DCHECK(suggestions_summary_list->empty());
+ DCHECK(!(suggestions & ~SUGGEST_NAVIGATE_TO_ORIGIN));
+ url::Origin failed_origin(failed_url);
+ if (failed_origin.unique())
+ return;
+
+ auto suggestion = base::MakeUnique<base::DictionaryValue>();
+ suggestion->SetString("summary",
+ l10n_util::GetStringUTF16(
+ IDS_ERRORPAGES_SUGGESTION_NAVIGATE_TO_ORIGIN));
+ suggestion->SetString("originURL", failed_origin.Serialize());
+ suggestions_summary_list->Append(std::move(suggestion));
+ return;
+ }
+ DCHECK(!IsSuggested(suggestions, SUGGEST_NAVIGATE_TO_ORIGIN));
+
if (IsOnlySuggestion(suggestions, SUGGEST_LEARNMORE)) {
DCHECK(suggestions_summary_list->empty());
AddLinkedSuggestionToList(error_code, locale, suggestions_summary_list,
« no previous file with comments | « no previous file | components/error_page/renderer/net_error_helper_core.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698