SpiderMonkey 38 upgrade: 09/35

Use .toFoo() instead of JSVAL_TO_FOO. Patch by leper.
Addresses https://bugzilla.mozilla.org/show_bug.cgi?id=952650

This was SVN commit r18663.
This commit is contained in:
Nicolas Auvray 2016-09-02 16:23:44 +00:00
parent 1223efcef8
commit c7c3ef9f92
4 changed files with 13 additions and 11 deletions

View File

@ -29,6 +29,7 @@
#include "ps/CLogger.h"
#include "scriptinterface/ScriptInterface.h"
#include "scriptinterface/ScriptExtraHeaders.h"
JSClass JSI_IGUIObject::JSI_class = {
"GUIObject", JSCLASS_HAS_PRIVATE,
@ -612,7 +613,7 @@ bool JSI_IGUIObject::construct(JSContext* cx, uint argc, jsval* vp)
JS::RootedObject obj(cx, pScriptInterface->CreateCustomObject("GUIObject"));
// Store the IGUIObject in the JS object's 'private' area
IGUIObject* guiObject = (IGUIObject*)JSVAL_TO_PRIVATE(args[0]);
IGUIObject* guiObject = (IGUIObject*)args[0].get().toPrivate();
JS_SetPrivate(obj, guiObject);
args.rval().setObject(*obj);

View File

@ -46,6 +46,7 @@
#endif
#include "jsfriendapi.h"
#include "js/Conversions.h"
#include "js/GCAPI.h"
#include "js/StructuredClone.h"

View File

@ -188,20 +188,20 @@ public:
ScriptInterface::ToJSVal<i32>(cx, &val2, 2147483647); // JSVAL_INT_MAX
ScriptInterface::ToJSVal<i32>(cx, &val3, -2147483647); // JSVAL_INT_MIN+1
ScriptInterface::ToJSVal<i32>(cx, &val4, -(i64)2147483648u); // JSVAL_INT_MIN
TS_ASSERT(JSVAL_IS_INT(val0));
TS_ASSERT(JSVAL_IS_INT(val1));
TS_ASSERT(JSVAL_IS_INT(val2));
TS_ASSERT(JSVAL_IS_INT(val3));
TS_ASSERT(JSVAL_IS_INT(val4));
TS_ASSERT(val0.isInt32());
TS_ASSERT(val1.isInt32());
TS_ASSERT(val2.isInt32());
TS_ASSERT(val3.isInt32());
TS_ASSERT(val4.isInt32());
ScriptInterface::ToJSVal<u32>(cx, &val5, 0);
ScriptInterface::ToJSVal<u32>(cx, &val6, 2147483646u); // JSVAL_INT_MAX-1
ScriptInterface::ToJSVal<u32>(cx, &val7, 2147483647u); // JSVAL_INT_MAX
ScriptInterface::ToJSVal<u32>(cx, &val8, 2147483648u); // JSVAL_INT_MAX+1
TS_ASSERT(JSVAL_IS_INT(val5));
TS_ASSERT(JSVAL_IS_INT(val6));
TS_ASSERT(JSVAL_IS_INT(val7));
TS_ASSERT(JSVAL_IS_DOUBLE(val8));
TS_ASSERT(val5.isInt32());
TS_ASSERT(val6.isInt32());
TS_ASSERT(val7.isInt32());
TS_ASSERT(val8.isDouble());
}
void test_nonfinite()

View File

@ -387,7 +387,7 @@ void CBinarySerializerScriptImpl::HandleScriptVal(JS::HandleValue val)
case JSTYPE_BOOLEAN:
{
m_Serializer.NumberU8_Unbounded("type", SCRIPT_TYPE_BOOLEAN);
bool b = JSVAL_TO_BOOLEAN(val);
bool b = val.toBoolean();
m_Serializer.NumberU8_Unbounded("value", b ? 1 : 0);
break;
}