diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c
index 6d8ed582d73f5500debe585463d8a044cae2f2ba..717983a83adca10e4ee64e1da121a843eb3b7d9b 100644
--- a/src/sbbs3/mailsrvr.c
+++ b/src/sbbs3/mailsrvr.c
@@ -2328,8 +2328,6 @@ BOOL bounce(smb_t* smb, smbmsg_t* msg, char* err, BOOL immediate)
 		smb_unlockmsghdr(smb,msg);
 		return(TRUE);
 	}
-	
-	lprintf("0000 !Bouncing message back to %s", msg->from);
 
 	newmsg=*msg;
 	/* Mark original message as deleted */
@@ -2345,6 +2343,13 @@ BOOL bounce(smb_t* smb, smbmsg_t* msg, char* err, BOOL immediate)
 		delfattach(&scfg,msg);
 	smb_unlockmsghdr(smb,msg);
 
+	if(!msg->idx.from && !msg->from_net.type) {
+		lprintf("0000 !Deleted undeliverable local message from %s", msg->from);
+		return(TRUE);
+	}
+	
+	lprintf("0000 !Bouncing message back to %s", msg->from);
+
 	newmsg.hfield=NULL;
 	newmsg.hfield_dat=NULL;
 	newmsg.total_hfields=0;