mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-05-25 03:42:13 +00:00
check original sender id
This commit is contained in:
parent
be35336a5d
commit
1371cf80cb
2 changed files with 25 additions and 0 deletions
|
|
@ -14,6 +14,19 @@ Future<void> handleAdditionalDataMessage(
|
||||||
Log.info(
|
Log.info(
|
||||||
'Got a additional data message: ${message.senderMessageId} from $groupId',
|
'Got a additional data message: ${message.senderMessageId} from $groupId',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Prevent message overwrite: reject if a message with this ID already
|
||||||
|
// exists from a different sender.
|
||||||
|
final existing = await twonlyDB.messagesDao
|
||||||
|
.getMessageById(message.senderMessageId)
|
||||||
|
.getSingleOrNull();
|
||||||
|
if (existing != null && existing.senderId != fromUserId) {
|
||||||
|
Log.warn(
|
||||||
|
'$fromUserId tried to overwrite message from ${existing.senderId}. Dropping.',
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
final msg = await twonlyDB.messagesDao.insertMessage(
|
final msg = await twonlyDB.messagesDao.insertMessage(
|
||||||
MessagesCompanion(
|
MessagesCompanion(
|
||||||
messageId: Value(message.senderMessageId),
|
messageId: Value(message.senderMessageId),
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,18 @@ Future<void> handleTextMessage(
|
||||||
'Got a text message: ${textMessage.senderMessageId} from $groupId',
|
'Got a text message: ${textMessage.senderMessageId} from $groupId',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Prevent message overwrite: reject if a message with this ID already
|
||||||
|
// exists from a different sender.
|
||||||
|
final existing = await twonlyDB.messagesDao
|
||||||
|
.getMessageById(textMessage.senderMessageId)
|
||||||
|
.getSingleOrNull();
|
||||||
|
if (existing != null && existing.senderId != fromUserId) {
|
||||||
|
Log.warn(
|
||||||
|
'$fromUserId tried to overwrite message from ${existing.senderId}. Dropping.',
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
final message = await twonlyDB.messagesDao.insertMessage(
|
final message = await twonlyDB.messagesDao.insertMessage(
|
||||||
MessagesCompanion(
|
MessagesCompanion(
|
||||||
messageId: Value(textMessage.senderMessageId),
|
messageId: Value(textMessage.senderMessageId),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue