fix: use message's expiry instead of the recipient's

pull/486/head
jubb 3 years ago
parent 53c966b634
commit bdc086cacf

@ -131,7 +131,7 @@ class Storage(context: Context, helper: SQLCipherOpenHelper) : Database(context,
val signalServiceAttachments = attachments.mapNotNull {
it.toSignalPointer()
}
val mediaMessage = IncomingMediaMessage.from(message, senderAddress, senderRecipient.expireMessages * 1000L, group, signalServiceAttachments, quote, linkPreviews)
val mediaMessage = IncomingMediaMessage.from(message, senderAddress, message.expiry * 1000L, group, signalServiceAttachments, quote, linkPreviews)
mmsDatabase.beginTransaction()
mmsDatabase.insertSecureDecryptedMessageInbox(mediaMessage, message.threadID ?: -1, message.sentTimestamp ?: 0)
}
@ -156,7 +156,7 @@ class Storage(context: Context, helper: SQLCipherOpenHelper) : Database(context,
val textMessage = OutgoingTextMessage.from(message, Recipient.from(context, targetAddress, false))
smsDatabase.insertMessageOutbox(message.threadID ?: -1, textMessage, message.sentTimestamp!!)
} else {
val textMessage = IncomingTextMessage.from(message, senderAddress, group, senderRecipient.expireMessages * 1000L)
val textMessage = IncomingTextMessage.from(message, senderAddress, group, message.expiry * 1000L)
val encrypted = IncomingEncryptedMessage(textMessage, textMessage.messageBody)
smsDatabase.insertMessageInbox(encrypted, message.sentTimestamp ?: 0)
}

@ -20,6 +20,7 @@ class VisibleMessage : Message() {
var linkPreview: LinkPreview? = null
var contact: Contact? = null
var profile: Profile? = null
var expiry: Int = 0
override val isSelfSendValid: Boolean = true
@ -47,6 +48,9 @@ class VisibleMessage : Message() {
// TODO Contact
val profile = Profile.fromProto(dataMessage)
profile?.let { result.profile = profile }
if (dataMessage.hasExpireTimer()) {
result.expiry = dataMessage.expireTimer
}
return result
}
}

Loading…
Cancel
Save