diff --git a/src/sbbs3/putmsg.cpp b/src/sbbs3/putmsg.cpp
index c71e218b1f782aa78d09115951deeea21ee855d7..4082b5b5a482fbc948aca56e4bc4ddef51c880e4 100644
--- a/src/sbbs3/putmsg.cpp
+++ b/src/sbbs3/putmsg.cpp
@@ -8,7 +8,7 @@
  * @format.tab-size 4		(Plain Text/Source Code File Header)			*
  * @format.use-tabs true	(see http://www.synchro.net/ptsc_hdr.html)		*
  *																			*
- * Copyright 2005 Rob Swindell - http://www.synchro.net/copyright.html		*
+ * Copyright 2006 Rob Swindell - http://www.synchro.net/copyright.html		*
  *																			*
  * This program is free software; you can redistribute it and/or			*
  * modify it under the terms of the GNU General Public License				*
@@ -102,7 +102,7 @@ char sbbs_t::putmsg(char *str, long mode)
 			l+=4; 
 		}
 		else if(cfg.sys_misc&SM_RENEGADE && str[l]=='|' && isdigit(str[l+1])
-			&& !(useron.misc&(RIP|WIP))) {
+			&& isdigit(str[l+2]) && !(useron.misc&(RIP|WIP))) {
 			sprintf(tmp2,"%.2s",str+l+1);
 			i=atoi(tmp2);
 			if(i>=16) { 				/* setting background */
@@ -114,9 +114,7 @@ char sbbs_t::putmsg(char *str, long mode)
 				i|=(curatr&0xf0);		/* leave background alone */
 			attr(i);
 			exatr=1;
-			l+=2;	/* Skip |x */
-			if(isdigit(str[l]))
-				l++;	/* Skip second digit if it exists */
+			l+=3;	/* Skip |xx */
 		}	
 		else if(cfg.sys_misc&SM_CELERITY && str[l]=='|' && isalpha(str[l+1])
 			&& !(useron.misc&(RIP|WIP))) {