From 1b9e7ebb33f75f0188cd5a93074a1c4ef2be2510 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Wed, 19 Sep 2001 00:34:34 +0000 Subject: [PATCH] Added file_remove() global function. --- src/sbbs3/js_global.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/sbbs3/js_global.c b/src/sbbs3/js_global.c index 129b582cbb..1222e2b033 100644 --- a/src/sbbs3/js_global.c +++ b/src/sbbs3/js_global.c @@ -280,6 +280,27 @@ js_fexist(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) return(JS_TRUE); } +static JSBool +js_remove(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) +{ + char* p; + JSString* js_str; + + if((js_str=JS_ValueToString(cx, argv[0]))==NULL) { + *rval = BOOLEAN_TO_JSVAL(JS_FALSE); + return(JS_TRUE); + } + + if((p=JS_GetStringBytes(js_str))==NULL) { + *rval = BOOLEAN_TO_JSVAL(JS_FALSE); + return(JS_TRUE); + } + + *rval = BOOLEAN_TO_JSVAL(remove(p)==0); + return(JS_TRUE); +} + + static JSBool js_isdir(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { @@ -418,6 +439,7 @@ static JSFunctionSpec js_global_functions[] = { {"ascii", js_ascii, 1}, /* convert str to ascii-val or vice-versa */ {"strip_ctrl", js_strip_ctrl, 1}, /* strip ctrl chars from string */ {"file_exists", js_fexist, 1}, /* verify file existence */ + {"file_remove", js_remove, 1}, /* delete a file */ {"file_isdir", js_isdir, 1}, /* check if directory */ {"file_attrib", js_fattr, 1}, /* get file mode/attributes */ {"file_date", js_fdate, 1}, /* get file last modified date/time */ -- GitLab