Fix network crash when unpinning.

This commit is contained in:
Michelle Tang
2026-02-27 15:19:48 -05:00
parent 8fca0c69ac
commit 0bf54e6b45

View File

@@ -11,6 +11,7 @@ import org.thoughtcrime.securesms.database.model.MmsMessageRecord
import org.thoughtcrime.securesms.dependencies.AppDependencies
import org.thoughtcrime.securesms.recipients.RecipientId
import org.thoughtcrime.securesms.util.GroupUtil
import org.thoughtcrime.securesms.util.NetworkUtil
import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage
/**
@@ -63,7 +64,17 @@ class PinnedMessageManager(
if (conversationRecipient.isGroup) {
GroupUtil.setDataMessageGroupContext(application, dataMessageBuilder, conversationRecipient.requireGroupId().requirePush())
}
AppDependencies.signalServiceMessageSender.sendSyncMessage(dataMessageBuilder.build())
// Best-effort attempt so that messages expire at the same time across devices but if it fails, we can ignore.
if (NetworkUtil.isConnected(application)) {
try {
AppDependencies.signalServiceMessageSender.sendSyncMessage(dataMessageBuilder.build())
} catch (e: Exception) {
Log.w(TAG, "Failed to send unpin sync message for message ${record.id}. Other devices will expire the pin independently.", e)
}
} else {
Log.w(TAG, "Failed to send unpin sync message for message ${record.id}. Other devices will expire the pin independently.")
}
}
}