Merge "Assign the bit calculation as long to prevent overflow" am: 1122a53585
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1664307 Change-Id: I548347851e102f81cd13516a6a409e74c59859f4
This commit is contained in:
@@ -592,8 +592,9 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
// TODO: Consider adding unwanted capabilities to the public API and mention this
|
// TODO: Consider adding unwanted capabilities to the public API and mention this
|
||||||
// in the documentation.
|
// in the documentation.
|
||||||
checkValidCapability(capability);
|
checkValidCapability(capability);
|
||||||
mNetworkCapabilities |= 1 << capability;
|
mNetworkCapabilities |= 1L << capability;
|
||||||
mUnwantedNetworkCapabilities &= ~(1 << capability); // remove from unwanted capability list
|
// remove from unwanted capability list
|
||||||
|
mUnwantedNetworkCapabilities &= ~(1L << capability);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -612,8 +613,8 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
public void addUnwantedCapability(@NetCapability int capability) {
|
public void addUnwantedCapability(@NetCapability int capability) {
|
||||||
checkValidCapability(capability);
|
checkValidCapability(capability);
|
||||||
mUnwantedNetworkCapabilities |= 1 << capability;
|
mUnwantedNetworkCapabilities |= 1L << capability;
|
||||||
mNetworkCapabilities &= ~(1 << capability); // remove from requested capabilities
|
mNetworkCapabilities &= ~(1L << capability); // remove from requested capabilities
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -626,7 +627,7 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
public @NonNull NetworkCapabilities removeCapability(@NetCapability int capability) {
|
public @NonNull NetworkCapabilities removeCapability(@NetCapability int capability) {
|
||||||
checkValidCapability(capability);
|
checkValidCapability(capability);
|
||||||
final long mask = ~(1 << capability);
|
final long mask = ~(1L << capability);
|
||||||
mNetworkCapabilities &= mask;
|
mNetworkCapabilities &= mask;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
@@ -641,7 +642,7 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
public @NonNull NetworkCapabilities removeUnwantedCapability(@NetCapability int capability) {
|
public @NonNull NetworkCapabilities removeUnwantedCapability(@NetCapability int capability) {
|
||||||
checkValidCapability(capability);
|
checkValidCapability(capability);
|
||||||
mUnwantedNetworkCapabilities &= ~(1 << capability);
|
mUnwantedNetworkCapabilities &= ~(1L << capability);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -709,14 +710,14 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
public boolean hasCapability(@NetCapability int capability) {
|
public boolean hasCapability(@NetCapability int capability) {
|
||||||
return isValidCapability(capability)
|
return isValidCapability(capability)
|
||||||
&& ((mNetworkCapabilities & (1 << capability)) != 0);
|
&& ((mNetworkCapabilities & (1L << capability)) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
|
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
|
||||||
public boolean hasUnwantedCapability(@NetCapability int capability) {
|
public boolean hasUnwantedCapability(@NetCapability int capability) {
|
||||||
return isValidCapability(capability)
|
return isValidCapability(capability)
|
||||||
&& ((mUnwantedNetworkCapabilities & (1 << capability)) != 0);
|
&& ((mUnwantedNetworkCapabilities & (1L << capability)) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user