| Index: chrome/browser/metrics/variations_service.cc
|
| ===================================================================
|
| --- chrome/browser/metrics/variations_service.cc (revision 145458)
|
| +++ chrome/browser/metrics/variations_service.cc (working copy)
|
| @@ -282,19 +282,13 @@
|
| }
|
|
|
| if (filter.has_min_version()) {
|
| - const Version min_version(filter.min_version());
|
| - if (!min_version.IsValid())
|
| + if (version.CompareToWildcardString(filter.min_version()) < 0)
|
| return false;
|
| - if (version.CompareTo(min_version) < 0)
|
| - return false;
|
| }
|
|
|
| if (filter.has_max_version()) {
|
| - const Version max_version(filter.max_version());
|
| - if (!max_version.IsValid())
|
| + if (version.CompareToWildcardString(filter.max_version()) > 0)
|
| return false;
|
| - if (version.CompareTo(max_version) > 0)
|
| - return false;
|
| }
|
|
|
| return true;
|
| @@ -333,6 +327,18 @@
|
| DVLOG(1) << study.name() << " has no default experiment defined.";
|
| return false;
|
| }
|
| + if (study.filter().has_min_version() &&
|
| + !Version::IsValidWildcardString(study.filter().min_version())) {
|
| + DVLOG(1) << study.name() << " has invalid min version: "
|
| + << study.filter().min_version();
|
| + return false;
|
| + }
|
| + if (study.filter().has_max_version() &&
|
| + !Version::IsValidWildcardString(study.filter().max_version())) {
|
| + DVLOG(1) << study.name() << " has invalid max version: "
|
| + << study.filter().max_version();
|
| + return false;
|
| + }
|
|
|
| const std::string& default_group_name = study.default_experiment_name();
|
| base::FieldTrial::Probability divisor = 0;
|
|
|