From 4fb85335a30260498bcd71ea7ab5aedf6f7ebcfb Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Sat, 22 Mar 2003 00:14:31 +0000 Subject: [PATCH] Added descriptions for associative arrays, made them enumerable again. --- src/sbbs3/js_file_area.c | 7 ++++++- src/sbbs3/js_msg_area.c | 8 ++++++-- src/sbbs3/js_xtrn_area.c | 7 ++++++- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/sbbs3/js_file_area.c b/src/sbbs3/js_file_area.c index 7c7194dd69..541f84eb2d 100644 --- a/src/sbbs3/js_file_area.c +++ b/src/sbbs3/js_file_area.c @@ -294,7 +294,7 @@ JSObject* DLLCALL js_CreateFileAreaObject(JSContext* cx, JSObject* parent, scfg_ /* Add as property (associative array element) */ if(!JS_DefineProperty(cx, alldirs, cfg->dir[d]->code, val - ,NULL,NULL,JSPROP_READONLY)) + ,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE)) return(NULL); #ifdef _DEBUG @@ -315,6 +315,11 @@ JSObject* DLLCALL js_CreateFileAreaObject(JSContext* cx, JSObject* parent, scfg_ if(!JS_SetProperty(cx, areaobj, "dir", &val)) return(NULL); +#ifdef _DEBUG + js_DescribeObject(cx,alldirs,"Associative array of all directories (use internal code as index)"); + JS_DefineProperty(cx,alldirs,"_dont_document",JSVAL_TRUE,NULL,NULL,JSPROP_READONLY); +#endif + return(areaobj); } diff --git a/src/sbbs3/js_msg_area.c b/src/sbbs3/js_msg_area.c index 45704be4fe..6ff9395a43 100644 --- a/src/sbbs3/js_msg_area.c +++ b/src/sbbs3/js_msg_area.c @@ -317,10 +317,9 @@ JSObject* DLLCALL js_CreateMsgAreaObject(JSContext* cx, JSObject* parent, scfg_t /* Add as property (associative array element) */ if(!JS_DefineProperty(cx, allsubs, cfg->sub[d]->code, val - ,NULL,NULL,JSPROP_READONLY)) + ,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE)) return(NULL); - #ifdef _DEBUG js_DescribeObject(cx,subobj,"Message Sub-boards"); #endif @@ -339,6 +338,11 @@ JSObject* DLLCALL js_CreateMsgAreaObject(JSContext* cx, JSObject* parent, scfg_t if(!JS_SetProperty(cx, areaobj, "sub", &val)) return(NULL); +#ifdef _DEBUG + js_DescribeObject(cx,allsubs,"Associative array of all sub-boards (use internal code as index)"); + JS_DefineProperty(cx,allsubs,"_dont_document",JSVAL_TRUE,NULL,NULL,JSPROP_READONLY); +#endif + return(areaobj); } diff --git a/src/sbbs3/js_xtrn_area.c b/src/sbbs3/js_xtrn_area.c index f955062036..a977c8640a 100644 --- a/src/sbbs3/js_xtrn_area.c +++ b/src/sbbs3/js_xtrn_area.c @@ -245,7 +245,7 @@ JSObject* DLLCALL js_CreateXtrnAreaObject(JSContext* cx, JSObject* parent, scfg_ /* Add as property (associative array element) */ if(!JS_DefineProperty(cx, allprog, cfg->xtrn[d]->code, val - ,NULL,NULL,JSPROP_READONLY)) + ,NULL,NULL,JSPROP_READONLY|JSPROP_ENUMERATE)) return(NULL); #ifdef _DEBUG @@ -266,6 +266,11 @@ JSObject* DLLCALL js_CreateXtrnAreaObject(JSContext* cx, JSObject* parent, scfg_ if(!JS_SetProperty(cx, areaobj, "prog", &val)) return(NULL); +#ifdef _DEBUG + js_DescribeObject(cx,allprog,"Associative array of all external programs (use internal code as index)"); + JS_DefineProperty(cx,allprog,"_dont_document",JSVAL_TRUE,NULL,NULL,JSPROP_READONLY); +#endif + /* Create event property */ if((eventobj=JS_NewObject(cx,NULL,NULL,areaobj))==NULL) return(NULL); -- GitLab