Chromium Code Reviews| Index: extensions/common/url_pattern_set.cc |
| diff --git a/extensions/common/url_pattern_set.cc b/extensions/common/url_pattern_set.cc |
| index 52db387453023762e2f8c66f0926e62eaa2cb7d5..5f09564f9f41bdf703746c041bef028a69ebd20f 100644 |
| --- a/extensions/common/url_pattern_set.cc |
| +++ b/extensions/common/url_pattern_set.cc |
| @@ -14,6 +14,7 @@ |
| #include "extensions/common/error_utils.h" |
| #include "extensions/common/url_pattern.h" |
| #include "url/gurl.h" |
| +#include "url/origin.h" |
| #include "url/url_constants.h" |
| namespace extensions { |
| @@ -152,11 +153,13 @@ void URLPatternSet::ClearPatterns() { |
| } |
| bool URLPatternSet::AddOrigin(int valid_schemes, const GURL& origin) { |
| - DCHECK_EQ(origin.GetOrigin(), origin); |
| + if (origin.is_empty()) |
| + return false; |
| + const url::Origin real_origin(origin); |
| + DCHECK(real_origin.IsSameOriginWith(url::Origin(origin.GetOrigin()))); |
|
Devlin
2016/02/03 21:01:25
Can we not use the static IsSameOriginWith() here?
palmer
2016/02/03 21:03:08
No, I actually want to maintain the check on GURL:
Devlin
2016/02/03 21:10:11
I'm sure that's right. Can you tell me why? :) (F
|
| URLPattern origin_pattern(valid_schemes); |
| // Origin adding could fail if |origin| does not match |valid_schemes|. |
| - if (origin_pattern.Parse(origin.GetOrigin().spec()) != |
| - URLPattern::PARSE_SUCCESS) { |
| + if (origin_pattern.Parse(origin.spec()) != URLPattern::PARSE_SUCCESS) { |
| return false; |
| } |
| origin_pattern.SetPath("/*"); |