From: Matthew Mondor Date: Fri, 27 Oct 2006 05:41:30 +0000 (+0000) Subject: Bugfixes X-Git-Tag: pgsql-branch-merge~95 X-Git-Url: http://git.pulsar-zone.net/?a=commitdiff_plain;h=04f3672e921ef4ef0d524ee783e472d860be4f46;p=mmondor.git Bugfixes --- diff --git a/mmsoftware/js/classes/js_dir.c b/mmsoftware/js/classes/js_dir.c index 3826314..8e80cc3 100644 --- a/mmsoftware/js/classes/js_dir.c +++ b/mmsoftware/js/classes/js_dir.c @@ -1,4 +1,4 @@ -/* $Id: js_dir.c,v 1.6 2006/10/21 05:44:45 mmondor Exp $ */ +/* $Id: js_dir.c,v 1.7 2006/10/27 05:38:50 mmondor Exp $ */ /* * Copyright (c) 2006, Matthew Mondor @@ -152,13 +152,12 @@ dir_constructor(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, QUEUE_EXCEPTION("Wrong number of arguments"); goto err; } - if (!JSVAL_IS_STRING(argv[0])) { + if (!JSVAL_IS_STRING(argv[0]) || + ((path = JS_GetStringBytes(JSVAL_TO_STRING(argv[0])))) == NULL) { QUEUE_EXCEPTION("Argument not a string"); goto err; } - path = JS_GetStringBytes(JSVAL_TO_STRING(argv[0])); - if (dir_path_allow(path) == -1) { char str[1024]; @@ -341,6 +340,7 @@ static JSBool dir_m_close(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { DIR *dir; + int v; if (argc != 0) { QUEUE_EXCEPTION("Function allows no arguments"); @@ -351,7 +351,8 @@ dir_m_close(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) dir = JS_GetInstancePrivate(cx, obj, &dir_class, NULL); assert(dir != NULL); - *rval = INT_TO_JSVAL(closedir(dir)); + v = closedir(dir); + *rval = INT_TO_JSVAL(v); (void) JS_SetPrivate(cx, obj, NULL); return JS_TRUE; diff --git a/mmsoftware/js/classes/js_fs.c b/mmsoftware/js/classes/js_fs.c index e8c7fad..8e46534 100644 --- a/mmsoftware/js/classes/js_fs.c +++ b/mmsoftware/js/classes/js_fs.c @@ -1,4 +1,4 @@ -/* $Id: js_fs.c,v 1.2 2006/10/21 05:44:46 mmondor Exp $ */ +/* $Id: js_fs.c,v 1.3 2006/10/27 05:41:30 mmondor Exp $ */ /* * Copyright (c) 2006, Matthew Mondor @@ -183,6 +183,7 @@ fs_sm_getcwd(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { static char cwd[MAXPATHLEN]; + JSString *str; *rval = OBJECT_TO_JSVAL(NULL); @@ -196,7 +197,11 @@ fs_sm_getcwd(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, return JS_FALSE; } - *rval = STRING_TO_JSVAL(JS_NewStringCopyZ(cx, cwd)); + if ((str = JS_NewStringCopyZ(cx, cwd)) == NULL) { + QUEUE_EXCEPTION("Internal error!"); + return JS_FALSE; + } + *rval = STRING_TO_JSVAL(str); return JS_TRUE; }