From cf653fc08429054e5451482166622fc8db8fec1f Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 23 Sep 2013 13:20:32 -0400 Subject: [PATCH] Fix ms del all not actually deleting some memos Fix numbering of memos in ms list --- modules/commands/ms_del.cpp | 5 ++--- modules/commands/ms_list.cpp | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/commands/ms_del.cpp b/modules/commands/ms_del.cpp index 8876f1d31..a3ac928a7 100644 --- a/modules/commands/ms_del.cpp +++ b/modules/commands/ms_del.cpp @@ -100,12 +100,11 @@ class CommandMSDel : public Command else { /* Delete all memos. */ - for (unsigned i = 0, end = mi->memos->size(); i < end; ++i) + for (unsigned i = mi->memos->size(); i > 0; --i) { FOREACH_MOD(OnMemoDel, (ci ? ci->name : source.nc->display, mi, mi->GetMemo(i))); - delete mi->GetMemo(i); + mi->Del(i - 1); } - mi->memos->clear(); if (!chan.empty()) source.Reply(_("All memos for channel %s have been deleted."), chan.c_str()); else diff --git a/modules/commands/ms_list.cpp b/modules/commands/ms_list.cpp index c0c69eb4f..1671c5c08 100644 --- a/modules/commands/ms_list.cpp +++ b/modules/commands/ms_list.cpp @@ -83,7 +83,7 @@ class CommandMSList : public Command const Memo *m = mi->GetMemo(number - 1); ListFormatter::ListEntry entry; - entry["Number"] = (m->unread ? "* " : " ") + stringify(number + 1); + entry["Number"] = (m->unread ? "* " : " ") + stringify(number); entry["Sender"] = m->sender; entry["Date/Time"] = Anope::strftime(m->time, source.GetAccount()); this->list.AddEntry(entry);