diff --git a/src/sbbs3/js_global.c b/src/sbbs3/js_global.c
index 526e39aa9adc8041fd683d7b5e86ca6ab1c3df5d..9e85069260e8b90c005f871fbff5f5ea49196cc4 100644
--- a/src/sbbs3/js_global.c
+++ b/src/sbbs3/js_global.c
@@ -715,6 +715,10 @@ js_quote_msg(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
 	if((outbuf=(char*)malloc((strlen(inbuf)*strlen(prefix))+1))==NULL)
 		return(JS_FALSE);
 
+	len-=strlen(prefix);
+	if(len<=0)
+		return(JS_FALSE);
+
 	if((linebuf=(char*)malloc(len+1))==NULL)
 		return(JS_FALSE);