Index: content/common/origin_trials/trial_token_validator.cc |
diff --git a/content/common/origin_trials/trial_token_validator.cc b/content/common/origin_trials/trial_token_validator.cc |
index 2dd4d8aaa46db22c5a7be6f2ed8f23eefcdfee02..6eef75a5e9a40be7f7cf5b3a3d594dc8e789f1b7 100644 |
--- a/content/common/origin_trials/trial_token_validator.cc |
+++ b/content/common/origin_trials/trial_token_validator.cc |
@@ -12,17 +12,19 @@ namespace content { |
bool TrialTokenValidator::ValidateToken(const std::string& token, |
const url::Origin& origin, |
- base::StringPiece featureName) { |
- std::unique_ptr<TrialToken> trial_token = TrialToken::Parse(token); |
- |
+ base::StringPiece feature_name) { |
// TODO(iclelland): Allow for multiple signing keys, and iterate over all |
// active keys here. https://crbug.com/543220 |
ContentClient* content_client = GetContentClient(); |
base::StringPiece public_key = content_client->GetOriginTrialPublicKey(); |
+ if (public_key.empty()) { |
+ return false; |
+ } |
+ std::unique_ptr<TrialToken> trial_token = TrialToken::From(token, public_key); |
- return !public_key.empty() && trial_token && |
- trial_token->IsAppropriate(origin, featureName) && |
- trial_token->IsValid(base::Time::Now(), public_key); |
+ return trial_token && |
+ trial_token->IsValidForFeature(origin, feature_name, |
+ base::Time::Now()); |
} |
} // namespace content |