am 2646b3a4: Merge "Prevent overflow in LocationRequest.setExpireIn()" into jb-mr1-dev
* commit '2646b3a46af3a24d54acffb1f956deeb6831d3ab': Prevent overflow in LocationRequest.setExpireIn()
This commit is contained in:
@@ -369,7 +369,15 @@ public final class LocationRequest implements Parcelable {
|
||||
* @return the same object, so that setters can be chained
|
||||
*/
|
||||
public LocationRequest setExpireIn(long millis) {
|
||||
mExpireAt = millis + SystemClock.elapsedRealtime();
|
||||
long elapsedRealtime = SystemClock.elapsedRealtime();
|
||||
|
||||
// Check for > Long.MAX_VALUE overflow (elapsedRealtime > 0):
|
||||
if (millis > Long.MAX_VALUE - elapsedRealtime) {
|
||||
mExpireAt = Long.MAX_VALUE;
|
||||
} else {
|
||||
mExpireAt = millis + elapsedRealtime;
|
||||
}
|
||||
|
||||
if (mExpireAt < 0) mExpireAt = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user