From 7702fb430b6da6745833cb65b685b29926cb4648 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Tue, 2 Apr 2019 07:29:59 +0000
Subject: [PATCH] Always display a no/yes prompt before deleting msgs with the
 'D' key (use the sysop 'D'elete command to quickly delete a range of
 messages).

---
 src/sbbs3/readmsgs.cpp | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/sbbs3/readmsgs.cpp b/src/sbbs3/readmsgs.cpp
index 1ecaffb61f..62acdc9453 100644
--- a/src/sbbs3/readmsgs.cpp
+++ b/src/sbbs3/readmsgs.cpp
@@ -950,11 +950,6 @@ int sbbs_t::scanposts(uint subnum, long mode, const char *find)
 							errormsg(WHERE,ERR_WRITE,smb.file,i,smb.last_error);
 						break;
 					}
-					SAFEPRINTF(str, text[DeleteTextFileQ], "Poll");
-					if(!yesno(str)) {
-						domsg=0;
-						break;
-					}
 				}
 				domsg=0;
 				if(!sub_op(subnum)) {
@@ -981,6 +976,14 @@ int sbbs_t::scanposts(uint subnum, long mode, const char *find)
 					domsg=0;
 					break; 
 				}
+				if(msg.hdr.type == SMB_MSG_TYPE_POLL)
+					SAFEPRINTF(str, text[DeleteTextFileQ], "Poll");
+				else
+					SAFEPRINTF2(str,text[DeletePostQ], smb.curmsg+1, msg.subj);
+				if(!(msg.hdr.attr&MSG_DELETE) && noyes(str)) {
+					domsg = false;
+					break;
+				}
 
 				FREE_AND_NULL(post);
 
@@ -1344,7 +1347,7 @@ int sbbs_t::scanposts(uint subnum, long mode, const char *find)
 									errormsg(WHERE,ERR_READ,smb.file,msg.idx.number);
 									break; 
 								}
-								sprintf(str,text[DeletePostQ],msg.hdr.number,msg.subj);
+								SAFEPRINTF2(str,text[DeletePostQ], smb.curmsg+1, msg.subj);
 								if(movemsg(&msg,subnum) && yesno(str)) {
 									msg.idx.attr|=MSG_DELETE;
 									msg.hdr.attr=msg.idx.attr;
-- 
GitLab