Skip to content
Snippets Groups Projects
Commit 5b8be9a0 authored by rswindell's avatar rswindell
Browse files

Bug-fix: file_area.lib array could contain a bogus value.

New properties: sysop_dir, user_dir, upload_dir, and lib[x].offline_dir
parent 7ace3bbe
No related branches found
No related tags found
No related merge requests found
......@@ -160,13 +160,13 @@ JSObject* DLLCALL js_CreateFileAreaObject(JSContext* cx, JSObject* parent, scfg_
if((libobj=JS_NewObject(cx, NULL, NULL, NULL))==NULL)
return(NULL);
val=OBJECT_TO_JSVAL(libobj);
lib_index=-1;
if(user==NULL || chk_ar(cfg,cfg->lib[l]->ar,user)) {
if(!JS_GetArrayLength(cx, lib_list, &lib_index))
return(NULL);
val=OBJECT_TO_JSVAL(libobj);
if(!JS_SetElement(cx, lib_list, lib_index, &val))
return(NULL);
}
......@@ -244,6 +244,26 @@ JSObject* DLLCALL js_CreateFileAreaObject(JSContext* cx, JSObject* parent, scfg_
,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE))
return(NULL);
if(d==cfg->user_dir
&& !JS_DefineProperty(cx, areaobj, "user_dir", val
,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE))
return(NULL);
if(d==cfg->sysop_dir
&& !JS_DefineProperty(cx, areaobj, "sysop_dir", val
,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE))
return(NULL);
if(d==cfg->upload_dir
&& !JS_DefineProperty(cx, areaobj, "upload_dir", val
,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE))
return(NULL);
if(d==cfg->lib[l]->offline_dir
&& !JS_DefineProperty(cx, libobj, "offline_dir", val
,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE))
return(NULL);
val=INT_TO_JSVAL(dir_index);
if(!JS_SetProperty(cx, dirobj, "index", &val))
return(NULL);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment