Fix possible NPE in StorageNotification.
Because findRecordByUuid() can return null, add a null check to avoid
NPE.
StorageNotification: Notifying about private volume: VolumeInfo{private}:
StorageNotification: type=PRIVATE diskId=null partGuid=null mountFlags=0 mountUserId=-10000
StorageNotification: state=MOUNTED
StorageNotification: fsType=null fsUuid=null fsLabel=null
StorageNotification: path=/data internalPath=null
AndroidRuntime: FATAL EXCEPTION: main
AndroidRuntime: Process: com.android.systemui, PID: 5952
AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.os.storage.VolumeRecord.isSnoozed()' on a null object reference
AndroidRuntime: at com.android.systemui.usb.StorageNotification.onVolumeStateChangedInternal(StorageNotification.java:337)
AndroidRuntime: at com.android.systemui.usb.StorageNotification.start(StorageNotification.java:114)
Bug: 253408750
Test: build, boot
Signed-off-by: Jimmy Hu <hhhuuu@google.com>
Change-Id: I8859d4d578ca040771bef9cf9870f91fb8d29628
This commit is contained in:
@@ -381,7 +381,7 @@ public class StorageNotification implements CoreStartable {
|
||||
|
||||
// Don't annoy when user dismissed in past. (But make sure the disk is adoptable; we
|
||||
// used to allow snoozing non-adoptable disks too.)
|
||||
if (rec.isSnoozed() && disk.isAdoptable()) {
|
||||
if (rec == null || (rec.isSnoozed() && disk.isAdoptable())) {
|
||||
return null;
|
||||
}
|
||||
if (disk.isAdoptable() && !rec.isInited() && rec.getType() != VolumeInfo.TYPE_PUBLIC
|
||||
|
||||
Reference in New Issue
Block a user