fix NPE in switchMap LiveData instances
This commit is contained in:
parent
70be2c8ba1
commit
5e3e38a3cc
|
@ -137,7 +137,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements OnPageChangeList
|
|||
if (subKeyLiveData == null) {
|
||||
KeyRepository keyRepository = KeyRepository.create(context);
|
||||
subKeyLiveData = Transformations.switchMap(getUnifiedKeyInfoLiveData(context),
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> keyRepository.getSubKeysByMasterKeyId(unifiedKeyInfo.master_key_id())));
|
||||
}
|
||||
return subKeyLiveData;
|
||||
|
@ -147,7 +147,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements OnPageChangeList
|
|||
if (userIdsLiveData == null) {
|
||||
KeyRepository keyRepository = KeyRepository.create(context);
|
||||
userIdsLiveData = Transformations.switchMap(getUnifiedKeyInfoLiveData(context),
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> keyRepository.getUserIds(unifiedKeyInfo.master_key_id())));
|
||||
}
|
||||
return userIdsLiveData;
|
||||
|
|
|
@ -292,7 +292,7 @@ public class ViewKeyAdvShareFragment extends Fragment {
|
|||
unifiedKeyInfoLiveData.observe(this, this::onLoadUnifiedKeyInfo);
|
||||
|
||||
LiveData<Bitmap> qrCodeLiveData = Transformations.switchMap(unifiedKeyInfoLiveData,
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(getContext(),
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(getContext(),
|
||||
() -> {
|
||||
String fingerprintHex = KeyFormattingUtils.convertFingerprintToHex(unifiedKeyInfo.fingerprint());
|
||||
Uri uri = new Uri.Builder().scheme(Constants.FINGERPRINT_SCHEME).opaquePart(fingerprintHex).build();
|
||||
|
|
|
@ -31,7 +31,7 @@ public class KeyFragmentViewModel extends ViewModel {
|
|||
if (identityInfo == null) {
|
||||
IdentityDao identityDao = IdentityDao.getInstance(context);
|
||||
identityInfo = Transformations.switchMap(unifiedKeyInfoLiveData,
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> identityDao.getIdentityInfos(unifiedKeyInfo.master_key_id(), showLinkedIds)));
|
||||
}
|
||||
return identityInfo;
|
||||
|
@ -41,7 +41,7 @@ public class KeyFragmentViewModel extends ViewModel {
|
|||
if (subkeyStatus == null) {
|
||||
SubkeyStatusDao subkeyStatusDao = SubkeyStatusDao.getInstance(context);
|
||||
subkeyStatus = Transformations.switchMap(unifiedKeyInfoLiveData,
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> subkeyStatusDao.getSubkeyStatus(unifiedKeyInfo.master_key_id())));
|
||||
}
|
||||
return subkeyStatus;
|
||||
|
@ -51,7 +51,7 @@ public class KeyFragmentViewModel extends ViewModel {
|
|||
if (systemContactInfo == null) {
|
||||
SystemContactDao systemContactDao = SystemContactDao.getInstance(context);
|
||||
systemContactInfo = Transformations.switchMap(unifiedKeyInfoLiveData,
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> systemContactDao.getSystemContactInfo(unifiedKeyInfo.master_key_id(),
|
||||
unifiedKeyInfo.has_any_secret())));
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ public class KeyFragmentViewModel extends ViewModel {
|
|||
if (keyserverStatus == null) {
|
||||
KeyMetadataDao keyMetadataDao = KeyMetadataDao.create(context);
|
||||
keyserverStatus = Transformations.switchMap(unifiedKeyInfoLiveData,
|
||||
(unifiedKeyInfo) -> new GenericLiveData<>(context,
|
||||
(unifiedKeyInfo) -> unifiedKeyInfo == null ? null : new GenericLiveData<>(context,
|
||||
() -> keyMetadataDao.getKeyMetadata(unifiedKeyInfo.master_key_id())));
|
||||
}
|
||||
return keyserverStatus;
|
||||
|
|
Loading…
Reference in a new issue