diff --git a/src/sbbs3/js_global.c b/src/sbbs3/js_global.c index d1cdab065b7c2c9afef3536e7fd4b797daec2f3a..e8a392d13fdd762e728a5bfa88b5d3e65ec7bafd 100644 --- a/src/sbbs3/js_global.c +++ b/src/sbbs3/js_global.c @@ -347,15 +347,16 @@ js_load(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) SAFECOPY(path,filename); else { path[0]=0; - if(JS_GetProperty(cx, obj, "js", &val) && JSVAL_IS_OBJECT(val)) { + if(JS_GetProperty(cx, obj, "js", &val) && val!=JSVAL_VOID && JSVAL_IS_OBJECT(val)) { JSObject* js = JSVAL_TO_OBJECT(val); - if(JS_GetProperty(cx, js, "exec_dir", &val) && JSVAL_IS_STRING(val)) { + if(JS_GetProperty(cx, js, "exec_dir", &val) && val!=JSVAL_VOID && JSVAL_IS_STRING(val)) { SAFEPRINTF2(path,"%s%s",js_ValueToStringBytes(cx, val, NULL),filename); if(!fexistcase(path)) path[0]=0; } if(path[0]==0 && JS_GetProperty(cx, js, JAVASCRIPT_LOAD_PATH_LIST, &val) + && val!=JSVAL_VOID && JSVAL_IS_OBJECT(val)) { JSObject* list = JSVAL_TO_OBJECT(val); jsuint i;