summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravi <avi@chromium.org>2015-05-28 13:55:19 -0700
committerCommit bot <commit-bot@chromium.org>2015-05-28 20:55:45 +0000
commit22afe87604125f26beafa2bf04d7542f5275e66b (patch)
treeff733ac641d219ccf6974aca4aaa0095fb5261ea
parent96ffbfc337c35cf3bb86c1aabc753c322dc56007 (diff)
downloadchromium_src-22afe87604125f26beafa2bf04d7542f5275e66b.zip
chromium_src-22afe87604125f26beafa2bf04d7542f5275e66b.tar.gz
chromium_src-22afe87604125f26beafa2bf04d7542f5275e66b.tar.bz2
Add a few more exceptions to classifier mismatches.
BUG=369661 TEST=none for now; fewer crashes later Review URL: https://codereview.chromium.org/1143423006 Cr-Commit-Position: refs/heads/master@{#331851}
-rw-r--r--content/browser/frame_host/navigation_controller_impl.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc
index 34c05fb..c4b94df 100644
--- a/content/browser/frame_host/navigation_controller_impl.cc
+++ b/content/browser/frame_host/navigation_controller_impl.cc
@@ -831,6 +831,15 @@ bool NavigationControllerImpl::RendererDidNavigate(
new_type == NAVIGATION_TYPE_SAME_PAGE;
ignore_mismatch |= details->type == NAVIGATION_TYPE_SAME_PAGE &&
new_type == NAVIGATION_TYPE_EXISTING_PAGE;
+ // There are mismatches in the field where the new classifier thinks it's
+ // AUTO_SUBFRAME and the old classifier somehow thinks it's NEW or IGNORE. For
+ // IGNORE we know of at least one repro (https://crbug.com/492875), and for
+ // NEW it's not entirely clear what's going on, but we're pretty sure the new
+ // classifier is correct for both cases, so we're letting these mismatches go.
+ ignore_mismatch |= details->type == NAVIGATION_TYPE_NEW_SUBFRAME &&
+ new_type == NAVIGATION_TYPE_AUTO_SUBFRAME;
+ ignore_mismatch |= details->type == NAVIGATION_TYPE_NAV_IGNORE &&
+ new_type == NAVIGATION_TYPE_AUTO_SUBFRAME;
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kSitePerProcess)) {
// In site-per-process mode, the new classifier sometimes correctly