From 5e24b9274feff70ba584a5b4592bc048ed47fea9 Mon Sep 17 00:00:00 2001 From: Athozus Date: Fri, 2 Jun 2023 22:55:11 +0200 Subject: [PATCH] Fix half deletion of messages --- storage.lua | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/storage.lua b/storage.lua index 889e083..576064a 100644 --- a/storage.lua +++ b/storage.lua @@ -114,23 +114,23 @@ function mail.delete_mail(playername, msg_ids) if type(msg_ids) ~= "table" then -- if this is not a table msg_ids = { msg_ids } end - for i, msg in ipairs(entry.inbox) do + for i = #entry.inbox, 1, -1 do for _, deleted_msg in ipairs(msg_ids) do - if msg.id == deleted_msg then + if entry.inbox[i].id == deleted_msg then table.remove(entry.inbox, i) end end end - for i, msg in ipairs(entry.outbox) do + for i = #entry.outbox, 1, -1 do for _, deleted_msg in ipairs(msg_ids) do - if msg.id == deleted_msg then + if entry.outbox[i].id == deleted_msg then table.remove(entry.outbox, i) end end end - for i, msg in ipairs(entry.drafts) do + for i = #entry.drafts, 1, -1 do for _, deleted_msg in ipairs(msg_ids) do - if msg.id == deleted_msg then + if entry.drafts[i].id == deleted_msg then table.remove(entry.drafts, i) end end