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

Unified Diff: components/omnibox/autocomplete_match.h

Issue 1098843004: Omnibox - Do Not Allow HTTP/HTTPS Equivalence if User Explicitly Entered A Scheme (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: possible fix for mac code (cannot compile mac code myself) Created 5 years, 6 months 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: components/omnibox/autocomplete_match.h
diff --git a/components/omnibox/autocomplete_match.h b/components/omnibox/autocomplete_match.h
index 53fa3417db5cdf03c1460ecc2e346acc679887ce..b13a6c80fd60cfd7e23b56bb8288b44bfc90f56f 100644
--- a/components/omnibox/autocomplete_match.h
+++ b/components/omnibox/autocomplete_match.h
@@ -184,22 +184,33 @@ struct AutocompleteMatch {
// left empty and the template URL (if any) is determined from the
// destination's hostname. The template URL is used to strip off query args
// other than the search terms themselves that would otherwise prevent doing
- // proper deduping.
+ // proper deduping. |input| is used to decide if the scheme is allowed to
+ // be altered during stripping. If this URL, minus the scheme and separator,
+ // starts with any the terms in input.terms_prefixed_by_http_or_https(), we
+ // avoid converting an HTTPS scheme to HTTP. This means URLs that differ
+ // only by these schemes won't be marked as dupes, since the distinction
+ // seems to matter to the user. |languages| is used to format punycoded
+ // domain names to UTF-8 for the aforementioned duplicate detection.
static GURL GURLToStrippedGURL(const GURL& url,
+ const AutocompleteInput& input,
+ const std::string& languages,
TemplateURLService* template_url_service,
const base::string16& keyword);
// Computes the stripped destination URL (via GURLToStrippedGURL()) and
// stores the result in |stripped_destination_url|.
Peter Kasting 2015/06/29 05:04:59 Nit: For this function and the next, I would proba
Mark P 2015/06/30 04:23:17 Done.
- void ComputeStrippedDestinationURL(TemplateURLService* template_url_service);
+ void ComputeStrippedDestinationURL(
+ const AutocompleteInput& input,
+ const std::string& languages,
+ TemplateURLService* template_url_service);
// Sets |allowed_to_be_default_match| to true if this match is effectively
// the URL-what-you-typed match (i.e., would be dupped against the UWYT
- // match when AutocompleteResult merges matches). |canonical_input_url| is
- // the AutocompleteInput interpreted as a URL (i.e.,
- // AutocompleteInput::canonicalized_url()).
- void EnsureUWYTIsAllowedToBeDefault(const GURL& canonical_input_url,
- TemplateURLService* template_url_service);
+ // match when AutocompleteResult merges matches).
+ void EnsureUWYTIsAllowedToBeDefault(
+ const AutocompleteInput& input,
+ const std::string& languages,
+ TemplateURLService* template_url_service);
// Gets data relevant to whether there should be any special keyword-related
// UI shown for this match. If this match represents a selected keyword, i.e.

Powered by Google App Engine
This is Rietveld 408576698