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

This commit is contained in:
jubb 2021-03-25 14:11:58 +11:00
parent 53c966b634
commit bdc086cacf
2 changed files with 6 additions and 2 deletions

View File

@ -131,7 +131,7 @@ class Storage(context: Context, helper: SQLCipherOpenHelper) : Database(context,
val signalServiceAttachments = attachments.mapNotNull { val signalServiceAttachments = attachments.mapNotNull {
it.toSignalPointer() 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.beginTransaction()
mmsDatabase.insertSecureDecryptedMessageInbox(mediaMessage, message.threadID ?: -1, message.sentTimestamp ?: 0) 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)) val textMessage = OutgoingTextMessage.from(message, Recipient.from(context, targetAddress, false))
smsDatabase.insertMessageOutbox(message.threadID ?: -1, textMessage, message.sentTimestamp!!) smsDatabase.insertMessageOutbox(message.threadID ?: -1, textMessage, message.sentTimestamp!!)
} else { } 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) val encrypted = IncomingEncryptedMessage(textMessage, textMessage.messageBody)
smsDatabase.insertMessageInbox(encrypted, message.sentTimestamp ?: 0) smsDatabase.insertMessageInbox(encrypted, message.sentTimestamp ?: 0)
} }

View File

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