Allow lease expiry to be +ve when the corresponding blobs expiry is 0.

It is fine for an app to aquire a lease until a certain time
even if the corresponding the blob doesn't have a expiry date associated
with it.

Fixes: 149789374
Test: atest --test-mapping apex/blobstore
Change-Id: I76f7bdb616d78a5d83a8489a898f1e6015589f38
This commit is contained in:
Sudheer Shanka
2020-02-18 17:28:12 -08:00
parent 251c21df37
commit 51a6c6ee50

View File

@@ -334,7 +334,8 @@ public class BlobStoreManagerService extends SystemService {
throw new SecurityException("Caller not allowed to access " + blobHandle
+ "; callingUid=" + callingUid + ", callingPackage=" + callingPackage);
}
if (leaseExpiryTimeMillis != 0 && leaseExpiryTimeMillis > blobHandle.expiryTimeMillis) {
if (leaseExpiryTimeMillis != 0 && blobHandle.expiryTimeMillis != 0
&& leaseExpiryTimeMillis > blobHandle.expiryTimeMillis) {
throw new IllegalArgumentException(
"Lease expiry cannot be later than blobs expiry time");
}