From 7c1d66f004e9d72f55bbfa96a121450f56f86c70 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Thu, 13 Jan 2005 02:48:53 +0000
Subject: [PATCH] Bugfix: if any non-passthru mail processors (e.g.
 listserver.js) match the recipient/to comparison, stop comparing. This bug
 caused non-passthru mailprocs to not work.

---
 src/sbbs3/mailsrvr.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c
index 9db88d811f..020bd871a6 100644
--- a/src/sbbs3/mailsrvr.c
+++ b/src/sbbs3/mailsrvr.c
@@ -3015,13 +3015,16 @@ static void smtp_thread(void* arg)
 				mailproc_match[i]=FALSE;
 				if(mailproc_list[i].to!=NULL) {
 					for(j=0;mailproc_list[i].to[j]!=NULL;j++) {
-						if(stricmp(p,mailproc_list[i].to[j])==0)
+						if(stricmp(p,mailproc_list[i].to[j])==0) {
 							mailproc_match[i]=TRUE;
+							if(!mailproc_list[i].passthru)
+								break;
+						}
 					}
 				}
 			}
 			/* destined for an external mail processor */
-			if(i<mailproc_count && !mailproc_list[i].passthru) {
+			if(i<mailproc_count) {
 				fprintf(rcptlst,"[%u]\n",rcpt_count++);
 				fprintf(rcptlst,"%s=%s\n",smb_hfieldtype(RECIPIENT),rcpt_addr);
 #if 0	/* should we fall-through to the sysop account? */
-- 
GitLab