Skip to content

Commit 2ec8a29

Browse files
SES-4537 - Disappearing messages don’t expire on the second device (#1502)
1 parent 1149388 commit 2ec8a29

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

app/src/main/java/org/thoughtcrime/securesms/service/ExpiringMessageManager.kt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,10 +211,14 @@ class ExpiringMessageManager @Inject constructor(
211211
}
212212

213213
override fun onMessageReceived(message: Message) {
214+
val messageId = message.id ?: return
215+
214216
// When we receive a message, we'll schedule deletion if it has an expiry mode set to
215217
// AfterSend, as the message would be considered sent from the sender's perspective.
216-
val messageId = message.id
217-
if (message.expiryMode is ExpiryMode.AfterSend && messageId != null) {
218+
// If we receive a message that is sent from ourselves (aka the sync message), we
219+
// will start the expiry timer regardless
220+
if (message.expiryMode is ExpiryMode.AfterSend ||
221+
(message.expiryMode != ExpiryMode.NONE && message.isSenderSelf)) {
218222
getDatabase(messageId.mms)
219223
.markExpireStarted(messageId.id, clock.currentTimeMills())
220224
}

0 commit comments

Comments
 (0)