From b6e455fd69c2cb9d2bb12b39c8cc721f2e5c3f61 Mon Sep 17 00:00:00 2001 From: Eliot Horowitz Date: Mon, 8 Jun 2009 10:54:08 -0400 Subject: [PATCH] fix type() for Array --- scripting/engine_spidermonkey.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripting/engine_spidermonkey.cpp b/scripting/engine_spidermonkey.cpp index 1bd6a91f07c..665e829e293 100644 --- a/scripting/engine_spidermonkey.cpp +++ b/scripting/engine_spidermonkey.cpp @@ -867,7 +867,12 @@ namespace mongo { switch ( JS_TypeOfValue( _context , val ) ){ case JSTYPE_VOID: return Undefined; case JSTYPE_NULL: return jstNULL; - case JSTYPE_OBJECT: return Object; + case JSTYPE_OBJECT: { + JSObject * o = JSVAL_TO_OBJECT( val ); + if ( JS_IsArrayObject( _context , o ) ) + return Array; + return Object; + } case JSTYPE_FUNCTION: return Code; case JSTYPE_STRING: return String; case JSTYPE_NUMBER: return NumberDouble;