Merge "DO NOT MERGE: ScanFilter: Fix argument sanitization logic." into qt-dev

This commit is contained in:
Martin Brabham
2019-05-22 18:04:43 +00:00
committed by Android (Google) Code Review

View File

@@ -590,6 +590,9 @@ public final class ScanFilter implements Parcelable {
public @NonNull Builder setServiceSolicitationUuid(
@Nullable ParcelUuid serviceSolicitationUuid) {
mServiceSolicitationUuid = serviceSolicitationUuid;
if (serviceSolicitationUuid == null) {
mServiceSolicitationUuidMask = null;
}
return this;
}
@@ -600,13 +603,16 @@ public final class ScanFilter implements Parcelable {
* indicate a match is needed for the bit in {@code serviceSolicitationUuid}, and 0 to
* ignore that bit.
*
* @param serviceSolicitationUuid can only be null if solicitationUuidMask is null.
* @param solicitationUuidMask can be null or a mask with no restriction.
*
* @throws IllegalArgumentException If {@code serviceSolicitationUuid} is {@code null} but
* {@code serviceSolicitationUuidMask} is not {@code null}.
*/
public @NonNull Builder setServiceSolicitationUuid(
@Nullable ParcelUuid serviceSolicitationUuid,
@Nullable ParcelUuid solicitationUuidMask) {
if (mServiceSolicitationUuidMask != null && mServiceSolicitationUuid == null) {
if (solicitationUuidMask != null && serviceSolicitationUuid == null) {
throw new IllegalArgumentException(
"SolicitationUuid is null while SolicitationUuidMask is not null!");
}