prevent message reply attack

pull/53/head
Zlatin Balevsky 2020-11-11 03:41:53 +00:00
parent 735760d11d
commit 4c066fca03
No known key found for this signature in database
GPG Key ID: A72832072D525E41
2 changed files with 14 additions and 12 deletions

View File

@ -180,12 +180,13 @@ class Messenger {
} }
public synchronized void onMessageReceivedEvent(MessageReceivedEvent e) { public synchronized void onMessageReceivedEvent(MessageReceivedEvent e) {
inboxMessages.add(e.message) if (inboxMessages.add(e.message)) {
diskIO.execute({ diskIO.execute({
File unread = new File(inbox, deriveUnread(e.message)) File unread = new File(inbox, deriveUnread(e.message))
unread.createNewFile() unread.createNewFile()
persist(e.message, inbox) persist(e.message, inbox)
}) })
}
} }
private boolean deliverTo(MWMessage message, Persona recipient) { private boolean deliverTo(MWMessage message, Persona recipient) {

View File

@ -857,12 +857,13 @@ class MainFrameModel {
void onMessageReceivedEvent(MessageReceivedEvent e) { void onMessageReceivedEvent(MessageReceivedEvent e) {
runInsideUIAsync { runInsideUIAsync {
messages++ if (messageHeadersMap.get(Messenger.INBOX).add(new MWMessageStatus(e.message, true))) {
messageHeadersMap.get(Messenger.INBOX).add(new MWMessageStatus(e.message, true)) messages++
if (folderIdx == Messenger.INBOX) { if (folderIdx == Messenger.INBOX) {
messageHeaders.clear() messageHeaders.clear()
messageHeaders.addAll(messageHeadersMap.get(Messenger.INBOX)) messageHeaders.addAll(messageHeadersMap.get(Messenger.INBOX))
view.messageHeaderTable.model.fireTableDataChanged() view.messageHeaderTable.model.fireTableDataChanged()
}
} }
} }
} }