Bug #14545 - get array length exceptions working with non-Number array

contructor arguments.


git-svn-id: svn://10.0.0.236/trunk@49874 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rogerl%netscape.com 1999-10-05 22:11:57 +00:00
parent 33cab018e9
commit ac914fc99e

View File

@ -1322,21 +1322,19 @@ Array(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
length = 0;
vector = NULL;
} else if (cx->version == JSVERSION_1_2) {
if (argc == 1 && ValueIsLength(cx, argv[0], &length))
vector = NULL;
else {
length = (jsuint) argc;
vector = argv;
}
length = (jsuint) argc;
vector = argv;
} else {
if (argc > 1) {
length = (jsuint) argc;
vector = argv;
} else if (!ValueIsLength(cx, argv[0], &length)) {
} else if (!JSVAL_IS_NUMBER(argv[0])) {
length = 1;
vector = argv;
} else {
} else if (ValueIsLength(cx, argv[0], &length)) {
vector = NULL;
} else {
return JS_FALSE;
}
}
return InitArrayObject(cx, obj, length, vector);