diff --git a/src/sbbs3/misc.c b/src/sbbs3/misc.c
index 8b865c0f80f679384bc1c1ed86621015a664afa2..20602772ec4ccf3458fb9eda2b1165b6be574df8 100644
--- a/src/sbbs3/misc.c
+++ b/src/sbbs3/misc.c
@@ -139,7 +139,7 @@ char* DLLCALL strip_ctrl(char *str)
 	char tmp[1024];
 	int i,j;
 
-	for(i=j=0;str[i];i++)
+	for(i=j=0;str[i] && j<sizeof(tmp)-1;i++)
 		if(str[i]==CTRL_A)
 			i++;
 		else if((uchar)str[i]>=SP)
@@ -154,7 +154,7 @@ char* DLLCALL strip_exascii(char *str)
 	char tmp[1024];
 	int i,j;
 
-	for(i=j=0;str[i];i++)
+	for(i=j=0;str[i] && j<sizeof(tmp)-1;i++)
 		if(!(str[i]&0x80))
 			tmp[j++]=str[i];
 	tmp[j]=0;