diff --git a/src/sbbs3/jsexec.c b/src/sbbs3/jsexec.c index c372fc49cad2f4cc0adafee84a5b8b64dafe1361..8b61c1a1a5b8b63b5b98faac4126fdf02dc21edf 100644 --- a/src/sbbs3/jsexec.c +++ b/src/sbbs3/jsexec.c @@ -316,8 +316,11 @@ js_prompt(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) JSString * prompt; JSString * str; - if((prompt=JS_ValueToString(cx, argv[0]))==NULL) - return(JS_FALSE); + if(!JSVAL_IS_VOID(argv[0])) { + if((prompt=JS_ValueToString(cx, argv[0]))==NULL) + return(JS_FALSE); + fprintf(confp,"%s: ",JS_GetStringBytes(prompt)); + } if(argc>1) { if((str=JS_ValueToString(cx, argv[1]))==NULL) @@ -326,8 +329,6 @@ js_prompt(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) } else instr[0]=0; - fprintf(confp,"%s: ",JS_GetStringBytes(prompt)); - if(!fgets(instr,sizeof(instr),stdin)) { *rval = JSVAL_VOID; return(JS_TRUE);