diff options
-rw-r--r-- | scripting/engine_spidermonkey.h | 2 | ||||
-rw-r--r-- | scripting/sm_db.cpp | 14 |
2 files changed, 14 insertions, 2 deletions
diff --git a/scripting/engine_spidermonkey.h b/scripting/engine_spidermonkey.h index 075f5244300..5ff24c35a0f 100644 --- a/scripting/engine_spidermonkey.h +++ b/scripting/engine_spidermonkey.h @@ -42,7 +42,7 @@ JSBool JS_CStringsAreUTF8(){ return false; } -#define js_DateClass date_class +#define SM16 #endif // -- END SM 1.6 hacks --- diff --git a/scripting/sm_db.cpp b/scripting/sm_db.cpp index e7a8d9b1940..ad1e53347f7 100644 --- a/scripting/sm_db.cpp +++ b/scripting/sm_db.cpp @@ -555,12 +555,24 @@ namespace mongo { b.appendTimestamp( name.c_str() , (unsigned long long)c->getNumber( o , "t" ) , (unsigned int )c->getNumber( o , "i" ) ); return true; } - + +#ifdef SM16 + { + jsdouble d = js_DateGetMsecSinceEpoch( c->_context , o ); + if ( d ){ + b.appendDate( name.c_str() , (unsigned long long)d ); + return true; + } + } +#else if ( JS_InstanceOf( c->_context , o, &js_DateClass, 0 ) ){ jsdouble d = js_DateGetMsecSinceEpoch( c->_context , o ); b.appendDate( name.c_str() , (unsigned long long)d ); return true; } +#endif + + return false; } |