mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Backed out changeset 5abed7bd3cb7 (bug 838014)
This commit is contained in:
parent
0daf6fbd05
commit
bc89b342d3
@ -33,21 +33,21 @@ BEGIN_TEST(testArrayBuffer_bug720949_steal)
|
||||
JS::HandleObject obj = testBuf[i];
|
||||
JS::HandleObject view = testArray[i];
|
||||
uint32_t size = sizes[i];
|
||||
js::RootedValue v(cx);
|
||||
jsval v;
|
||||
|
||||
// Byte lengths should all agree
|
||||
CHECK(JS_IsArrayBufferObject(obj));
|
||||
CHECK_EQUAL(JS_GetArrayBufferByteLength(obj), size);
|
||||
JS_GetProperty(cx, obj, "byteLength", v.address());
|
||||
JS_GetProperty(cx, obj, "byteLength", &v);
|
||||
CHECK_SAME(v, INT_TO_JSVAL(size));
|
||||
JS_GetProperty(cx, view, "byteLength", v.address());
|
||||
JS_GetProperty(cx, view, "byteLength", &v);
|
||||
CHECK_SAME(v, INT_TO_JSVAL(size));
|
||||
|
||||
// Modifying the underlying data should update the value returned through the view
|
||||
uint8_t *data = JS_GetArrayBufferData(obj);
|
||||
CHECK(data != NULL);
|
||||
*reinterpret_cast<uint32_t*>(data) = MAGIC_VALUE_2;
|
||||
CHECK(JS_GetElement(cx, view, 0, v.address()));
|
||||
CHECK(JS_GetElement(cx, view, 0, &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(MAGIC_VALUE_2));
|
||||
|
||||
// Steal the contents
|
||||
@ -58,17 +58,17 @@ BEGIN_TEST(testArrayBuffer_bug720949_steal)
|
||||
|
||||
// Check that the original ArrayBuffer is neutered
|
||||
CHECK_EQUAL(JS_GetArrayBufferByteLength(obj), 0);
|
||||
CHECK(JS_GetProperty(cx, obj, "byteLength", v.address()));
|
||||
CHECK(JS_GetProperty(cx, obj, "byteLength", &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(0));
|
||||
CHECK(JS_GetProperty(cx, view, "byteLength", v.address()));
|
||||
CHECK(JS_GetProperty(cx, view, "byteLength", &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(0));
|
||||
CHECK(JS_GetProperty(cx, view, "byteOffset", v.address()));
|
||||
CHECK(JS_GetProperty(cx, view, "byteOffset", &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(0));
|
||||
CHECK(JS_GetProperty(cx, view, "length", v.address()));
|
||||
CHECK(JS_GetProperty(cx, view, "length", &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(0));
|
||||
CHECK_EQUAL(JS_GetArrayBufferByteLength(obj), 0);
|
||||
v = JSVAL_VOID;
|
||||
JS_GetElement(cx, obj, 0, v.address());
|
||||
JS_GetElement(cx, obj, 0, &v);
|
||||
CHECK_SAME(v, JSVAL_VOID);
|
||||
|
||||
// Transfer to a new ArrayBuffer
|
||||
@ -83,7 +83,7 @@ BEGIN_TEST(testArrayBuffer_bug720949_steal)
|
||||
data = JS_GetArrayBufferData(dst);
|
||||
CHECK(data != NULL);
|
||||
CHECK_EQUAL(*reinterpret_cast<uint32_t*>(data), MAGIC_VALUE_2);
|
||||
CHECK(JS_GetElement(cx, dstview, 0, v.address()));
|
||||
CHECK(JS_GetElement(cx, dstview, 0, &v));
|
||||
CHECK_SAME(v, INT_TO_JSVAL(MAGIC_VALUE_2));
|
||||
}
|
||||
|
||||
@ -162,8 +162,8 @@ BEGIN_TEST(testArrayBuffer_bug720949_viewList)
|
||||
}
|
||||
|
||||
bool isNeutered(JS::HandleObject obj) {
|
||||
js::RootedValue v(cx);
|
||||
return JS_GetProperty(cx, obj, "byteLength", v.address()) && v.toInt32() == 0;
|
||||
JS::Value v;
|
||||
return JS_GetProperty(cx, obj, "byteLength", &v) && v.toInt32() == 0;
|
||||
}
|
||||
|
||||
END_TEST(testArrayBuffer_bug720949_viewList)
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
BEGIN_TEST(testDeepFreeze_bug535703)
|
||||
{
|
||||
js::RootedValue v(cx);
|
||||
EVAL("var x = {}; x;", v.address());
|
||||
jsval v;
|
||||
EVAL("var x = {}; x;", &v);
|
||||
js::RootedObject obj(cx, JSVAL_TO_OBJECT(v));
|
||||
CHECK(JS_DeepFreezeObject(cx, obj)); // don't crash
|
||||
EVAL("Object.isFrozen(x)", v.address());
|
||||
EVAL("Object.isFrozen(x)", &v);
|
||||
CHECK_SAME(v, JSVAL_TRUE);
|
||||
return true;
|
||||
}
|
||||
|
@ -53,8 +53,8 @@ BEGIN_TEST(testExtendedEq_bug530489)
|
||||
CHECK(JS_DefineObject(cx, global, "obj1", clasp, NULL, 0));
|
||||
CHECK(JS_DefineObject(cx, global, "obj2", clasp, NULL, 0));
|
||||
|
||||
js::RootedValue v(cx);
|
||||
EVAL("(function() { var r; for (var i = 0; i < 10; ++i) r = obj1 == obj2; return r; })()", v.address());
|
||||
jsval v;
|
||||
EVAL("(function() { var r; for (var i = 0; i < 10; ++i) r = obj1 == obj2; return r; })()", &v);
|
||||
CHECK_SAME(v, JSVAL_TRUE);
|
||||
return true;
|
||||
}
|
||||
|
@ -184,11 +184,10 @@ class JSAPITest
|
||||
return false; \
|
||||
} while (false)
|
||||
|
||||
bool checkSame(jsval actualArg, jsval expectedArg,
|
||||
bool checkSame(jsval actual, jsval expected,
|
||||
const char *actualExpr, const char *expectedExpr,
|
||||
const char *filename, int lineno) {
|
||||
JSBool same;
|
||||
js::RootedValue actual(cx, actualArg), expected(cx, expectedArg);
|
||||
return (JS_SameValue(cx, actual, expected, &same) && same) ||
|
||||
fail(JSAPITestString("CHECK_SAME failed: expected JS_SameValue(cx, ") +
|
||||
actualExpr + ", " + expectedExpr + "), got !JS_SameValue(cx, " +
|
||||
|
Loading…
Reference in New Issue
Block a user