mirror of
https://github.com/oxen-io/session-android.git
synced 2025-12-05 07:32:14 +00:00
Correctly update MMS security status.
This commit is contained in:
@@ -24,6 +24,7 @@ import android.util.Pair;
|
||||
import org.thoughtcrime.securesms.database.DatabaseFactory;
|
||||
import org.thoughtcrime.securesms.database.MmsDatabase;
|
||||
import org.thoughtcrime.securesms.database.ThreadDatabase;
|
||||
import org.thoughtcrime.securesms.mms.MmsSendResult;
|
||||
import org.thoughtcrime.securesms.notifications.MessageNotifier;
|
||||
import org.thoughtcrime.securesms.recipients.Recipients;
|
||||
import org.thoughtcrime.securesms.service.SendReceiveService.ToastHandler;
|
||||
@@ -64,8 +65,14 @@ public class MmsSender {
|
||||
try {
|
||||
Log.w("MmsSender", "Passing to MMS transport: " + message.getDatabaseMessageId());
|
||||
database.markAsSending(message.getDatabaseMessageId());
|
||||
Pair<byte[], Integer> result = transport.deliver(message, threadId);
|
||||
database.markAsSent(message.getDatabaseMessageId(), result.first, result.second);
|
||||
MmsSendResult result = transport.deliver(message, threadId);
|
||||
|
||||
if (result.isUpgradedSecure()) {
|
||||
database.markAsSecure(message.getDatabaseMessageId());
|
||||
}
|
||||
|
||||
database.markAsSent(message.getDatabaseMessageId(), result.getMessageId(),
|
||||
result.getResponseStatus());
|
||||
} catch (UndeliverableMessageException e) {
|
||||
Log.w("MmsSender", e);
|
||||
database.markAsSentFailed(message.getDatabaseMessageId());
|
||||
|
||||
@@ -16,6 +16,7 @@ import org.whispersystems.textsecure.crypto.AttachmentCipherInputStream;
|
||||
import org.whispersystems.textsecure.crypto.InvalidMessageException;
|
||||
import org.whispersystems.textsecure.crypto.MasterCipher;
|
||||
import org.whispersystems.textsecure.crypto.MasterSecret;
|
||||
import org.whispersystems.textsecure.push.NotFoundException;
|
||||
import org.whispersystems.textsecure.push.PushServiceSocket;
|
||||
import org.whispersystems.textsecure.util.Base64;
|
||||
|
||||
@@ -79,6 +80,13 @@ public class PushDownloader {
|
||||
InputStream attachmentInput = new AttachmentCipherInputStream(attachmentFile, key);
|
||||
|
||||
database.updateDownloadedPart(messageId, partId, part, attachmentInput);
|
||||
} catch (NotFoundException e) {
|
||||
Log.w("PushDownloader", e);
|
||||
try {
|
||||
database.updateFailedDownloadedPart(messageId, partId, part);
|
||||
} catch (MmsException mme) {
|
||||
Log.w("PushDownloader", mme);
|
||||
}
|
||||
} catch (InvalidMessageException e) {
|
||||
Log.w("PushDownloader", e);
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user