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

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: no equivalence across schemes if any scheme is present Created 5 years, 7 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 0464d73ac275e41a2c753bc5a6925828ddc70cbd..3b8410a9d2f1721953369356e0bdbe7407e0b348 100644
--- a/components/omnibox/autocomplete_match.h
+++ b/components/omnibox/autocomplete_match.h
@@ -183,22 +183,31 @@ 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.
- static GURL GURLToStrippedGURL(const GURL& url,
- TemplateURLService* template_url_service,
- const base::string16& keyword);
+ // proper deduping. |input_words| is used to decide if the scheme is allowed
+ // to be altered during stripping. (If the user indicated a desired scheme,
+ // we prevent two URLs with different schemes from having the same stripped
+ // GURL.)
+ static GURL GURLToStrippedGURL(
+ const GURL& url,
+ const std::vector<base::string16>& input_words,
+ TemplateURLService* template_url_service,
+ const base::string16& keyword);
// Computes the stripped destination URL (via GURLToStrippedGURL()) and
// stores the result in |stripped_destination_url|.
- void ComputeStrippedDestinationURL(TemplateURLService* template_url_service);
+ void ComputeStrippedDestinationURL(
+ const std::vector<base::string16>& input_words,
+ 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);
+ void EnsureUWYTIsAllowedToBeDefault(
+ const GURL& canonical_input_url,
+ const std::vector<base::string16>& input_words,
+ 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