| Index: extensions/common/url_pattern.cc
 | 
| diff --git a/extensions/common/url_pattern.cc b/extensions/common/url_pattern.cc
 | 
| index 7313e125a81ec4357bd05d979a67267089264b4d..91ba65bec02583f4666ea4a68e76c96fe3ef66e6 100644
 | 
| --- a/extensions/common/url_pattern.cc
 | 
| +++ b/extensions/common/url_pattern.cc
 | 
| @@ -445,28 +445,24 @@ bool URLPattern::ImpliesAllHosts() const {
 | 
|    if (!match_subdomains_)
 | 
|      return false;
 | 
|  
 | 
| -  // If |host_| is a recognized TLD, this will be 0. We don't include private
 | 
| -  // TLDs, so that, e.g., *.appspot.com does not imply all hosts.
 | 
| -  size_t registry_length = net::registry_controlled_domains::GetRegistryLength(
 | 
| -      host_,
 | 
| -      net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
 | 
| -      net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
 | 
|    // If there was more than just a TLD in the host (e.g., *.foobar.com), it
 | 
| -  // doesn't imply all hosts.
 | 
| -  if (registry_length > 0)
 | 
| +  // doesn't imply all hosts. We don't include private TLDs, so that, e.g.,
 | 
| +  // *.appspot.com does not imply all hosts.
 | 
| +  if (net::registry_controlled_domains::HostHasRegistryControlledDomain(
 | 
| +          host_, net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
 | 
| +          net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES))
 | 
|      return false;
 | 
|  
 | 
|    // At this point the host could either be just a TLD ("com") or some unknown
 | 
|    // TLD-like string ("notatld"). To disambiguate between them construct a
 | 
| -  // fake URL, and check the registry. This returns 0 if the TLD is
 | 
| -  // unrecognized, or the length of the recognized TLD.
 | 
| -  registry_length = net::registry_controlled_domains::GetRegistryLength(
 | 
| -      base::StringPrintf("foo.%s", host_.c_str()),
 | 
| +  // fake URL, and check the registry.
 | 
| +  //
 | 
| +  // If we recognized this TLD, then this is a pattern like *.com, and it
 | 
| +  // should imply all hosts.
 | 
| +  return net::registry_controlled_domains::HostHasRegistryControlledDomain(
 | 
| +      "notatld." + host_,
 | 
|        net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
 | 
|        net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
 | 
| -  // If we recognized this TLD, then this is a pattern like *.com, and it
 | 
| -  // should imply all hosts. Otherwise, this doesn't imply all hosts.
 | 
| -  return registry_length > 0;
 | 
|  }
 | 
|  
 | 
|  bool URLPattern::MatchesSingleOrigin() const {
 | 
| 
 |