diff --git a/src/sbbs3/js_global.c b/src/sbbs3/js_global.c index 59a2263aacca4e0845014b2c23c8142fd8cda660..0727071879b524f56f5272da0643f4dae3a860d5 100644 --- a/src/sbbs3/js_global.c +++ b/src/sbbs3/js_global.c @@ -302,7 +302,7 @@ js_load(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) if((filename=js_ValueToStringBytes(cx, argv[argn++], NULL))==NULL) return(JS_FALSE); - if(argc>argn) { + if(argc>argn || background) { if((js_argv=JS_NewArrayObject(exec_cx, 0, NULL)) == NULL) return(JS_FALSE); @@ -312,9 +312,10 @@ js_load(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) for(i=argn; i<argc; i++) JS_SetElement(exec_cx, js_argv, i-argn, js_CopyValue(cx,argv[i],exec_cx,&val)); + + JS_DefineProperty(exec_cx, exec_obj, "argc", INT_TO_JSVAL(argc-argn) + ,NULL,NULL,JSPROP_ENUMERATE|JSPROP_READONLY); } - JS_DefineProperty(exec_cx, exec_obj, "argc", INT_TO_JSVAL(argc-argn) - ,NULL,NULL,JSPROP_ENUMERATE|JSPROP_READONLY); errno = 0; if(isfullpath(filename))