kopia lustrzana https://github.com/ryukoposting/Signal-Android
Fix crash from treating mms groups like Signal groups after sms is disabled.
Fixes #12534fork-5.53.8
rodzic
ba3dd79d4e
commit
3b3dcdcb14
|
@ -2726,7 +2726,7 @@ public class ConversationParentFragment extends Fragment
|
||||||
inputPanel.setHideForBlockedState(true);
|
inputPanel.setHideForBlockedState(true);
|
||||||
smsExportStub.setVisibility(View.GONE);
|
smsExportStub.setVisibility(View.GONE);
|
||||||
registerButton.setVisibility(View.VISIBLE);
|
registerButton.setVisibility(View.VISIBLE);
|
||||||
} else if (!conversationSecurityInfo.isPushAvailable() && !(SignalStore.misc().getSmsExportPhase().isSmsSupported() && conversationSecurityInfo.isDefaultSmsApplication()) && recipient.hasSmsAddress()) {
|
} else if (!conversationSecurityInfo.isPushAvailable() && !(SignalStore.misc().getSmsExportPhase().isSmsSupported() && conversationSecurityInfo.isDefaultSmsApplication()) && (recipient.hasSmsAddress() || recipient.isMmsGroup())) {
|
||||||
unblockButton.setVisibility(View.GONE);
|
unblockButton.setVisibility(View.GONE);
|
||||||
inputPanel.setHideForBlockedState(true);
|
inputPanel.setHideForBlockedState(true);
|
||||||
smsExportStub.setVisibility(View.VISIBLE);
|
smsExportStub.setVisibility(View.VISIBLE);
|
||||||
|
|
|
@ -158,6 +158,11 @@ public class RemoteDeleteSendJob extends BaseJob {
|
||||||
throw new IllegalStateException("Cannot delete a message that isn't yours!");
|
throw new IllegalStateException("Cannot delete a message that isn't yours!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!conversationRecipient.isRegistered() || conversationRecipient.isMmsGroup()) {
|
||||||
|
Log.w(TAG, "Unable to remote delete non-push messages");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
List<Recipient> possible = Stream.of(recipients).map(Recipient::resolved).toList();
|
List<Recipient> possible = Stream.of(recipients).map(Recipient::resolved).toList();
|
||||||
List<Recipient> eligible = RecipientUtil.getEligibleForSending(Stream.of(recipients).map(Recipient::resolved).toList());
|
List<Recipient> eligible = RecipientUtil.getEligibleForSending(Stream.of(recipients).map(Recipient::resolved).toList());
|
||||||
List<RecipientId> skipped = Stream.of(SetUtil.difference(possible, eligible)).map(Recipient::getId).toList();
|
List<RecipientId> skipped = Stream.of(SetUtil.difference(possible, eligible)).map(Recipient::getId).toList();
|
||||||
|
|
|
@ -130,7 +130,7 @@ public class IncomingLollipopMmsConnection extends LollipopMmsConnection impleme
|
||||||
|
|
||||||
try {
|
try {
|
||||||
retrieved = (RetrieveConf) new PduParser(baos.toByteArray(), parseContentDisposition).parse();
|
retrieved = (RetrieveConf) new PduParser(baos.toByteArray(), parseContentDisposition).parse();
|
||||||
} catch (NullPointerException e) {
|
} catch (AssertionError | NullPointerException e) {
|
||||||
Log.w(TAG, "Badly formatted MMS message caused the parser to fail.", e);
|
Log.w(TAG, "Badly formatted MMS message caused the parser to fail.", e);
|
||||||
throw new MmsException(e);
|
throw new MmsException(e);
|
||||||
}
|
}
|
||||||
|
|
Ładowanie…
Reference in New Issue