From 51a6c6ee50c7144abb5aab4930eb4ae3887b47d9 Mon Sep 17 00:00:00 2001 From: Sudheer Shanka Date: Tue, 18 Feb 2020 17:28:12 -0800 Subject: [PATCH] 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 --- .../java/com/android/server/blob/BlobStoreManagerService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apex/blobstore/service/java/com/android/server/blob/BlobStoreManagerService.java b/apex/blobstore/service/java/com/android/server/blob/BlobStoreManagerService.java index d4ceabda8accc..7b3764a999f75 100644 --- a/apex/blobstore/service/java/com/android/server/blob/BlobStoreManagerService.java +++ b/apex/blobstore/service/java/com/android/server/blob/BlobStoreManagerService.java @@ -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"); }