From 9ea77f7271092e305b9dd2764d21419036697689 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Fri, 4 Jul 2003 10:14:35 +0000
Subject: [PATCH] write() now returns the string passed (instead of void).
 Created writeln() method (with print as alias).

---
 src/sbbs3/ftpsrvr.c | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/src/sbbs3/ftpsrvr.c b/src/sbbs3/ftpsrvr.c
index 6675ac4694..4a6e3636f8 100644
--- a/src/sbbs3/ftpsrvr.c
+++ b/src/sbbs3/ftpsrvr.c
@@ -389,7 +389,7 @@ static JSBool
 js_write(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
 {
     uintN		i;
-    JSString *	str;
+    JSString*	str=NULL;
 	FILE*	fp;
 
 	if((fp=(FILE*)JS_GetContextPrivate(cx))==NULL)
@@ -402,11 +402,30 @@ js_write(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
 		fprintf(fp,"%s",JS_GetStringBytes(str));
 	}
 
+	if(str==NULL)
+		*rval = JSVAL_VOID;
+	else
+		*rval = STRING_TO_JSVAL(str);
+	return(JS_TRUE);
+}
+
+static JSBool
+js_writeln(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+{
+	FILE*	fp;
+
+	if((fp=(FILE*)JS_GetContextPrivate(cx))==NULL)
+		return(JS_FALSE);
+
+	js_write(cx,obj,argc,argv,rval);
+	fprintf(fp,"\r\n");
 	return(JS_TRUE);
 }
 
 static JSFunctionSpec js_global_functions[] = {
 	{"write",           js_write,           1},		/* write to HTML file */
+	{"writeln",         js_writeln,         1},		/* write to HTML file */
+	{"print",			js_writeln,         1},		/* alias for writeln */
 	{0}
 };
 
-- 
GitLab