Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1ea5d75 authored by Hall Liu's avatar Hall Liu
Browse files

Fix validation problem in PhoneNumberRange

Regexes weren't matching empty strings (which are perfectly valid) for
the various arguments in the ranges. Fix it so that they do match.

Bug: 119675160
Test: GTS
Change-Id: I4ea0f65b62af9fd35612e5261e01b2bea07c8ddc
parent 239b0de6
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -71,10 +71,10 @@ public final class PhoneNumberRange implements Parcelable {
    public PhoneNumberRange(@NonNull String countryCode, @NonNull String prefix,
            @NonNull String lowerBound, @NonNull String upperBound) {
        validateLowerAndUpperBounds(lowerBound, upperBound);
        if (!Pattern.matches("[0-9]+", countryCode)) {
        if (!Pattern.matches("[0-9]*", countryCode)) {
            throw new IllegalArgumentException("Country code must be all numeric");
        }
        if (!Pattern.matches("[0-9]+", prefix)) {
        if (!Pattern.matches("[0-9]*", prefix)) {
            throw new IllegalArgumentException("Prefix must be all numeric");
        }
        mCountryCode = countryCode;
@@ -133,10 +133,10 @@ public final class PhoneNumberRange implements Parcelable {
        if (lowerBound.length() != upperBound.length()) {
            throw new IllegalArgumentException("Lower and upper bounds must have the same length");
        }
        if (!Pattern.matches("[0-9]+", lowerBound)) {
        if (!Pattern.matches("[0-9]*", lowerBound)) {
            throw new IllegalArgumentException("Lower bound must be all numeric");
        }
        if (!Pattern.matches("[0-9]+", upperBound)) {
        if (!Pattern.matches("[0-9]*", upperBound)) {
            throw new IllegalArgumentException("Upper bound must be all numeric");
        }
        if (Integer.parseInt(lowerBound) > Integer.parseInt(upperBound)) {