mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 658351 - Add extra assertions to jsval.h to check for malformed JSBools r=mrbkap
This commit is contained in:
parent
f8876b89e0
commit
39aa116d95
@ -462,6 +462,10 @@ static JS_ALWAYS_INLINE jsval_layout
|
|||||||
BOOLEAN_TO_JSVAL_IMPL(JSBool b)
|
BOOLEAN_TO_JSVAL_IMPL(JSBool b)
|
||||||
{
|
{
|
||||||
jsval_layout l;
|
jsval_layout l;
|
||||||
|
|
||||||
|
// Happens if XPConnect hands out an illegal value (constructed from C++ through a PRBool, for
|
||||||
|
// instance).
|
||||||
|
JS_ASSERT(b == JS_TRUE || b == JS_FALSE);
|
||||||
l.s.tag = JSVAL_TAG_BOOLEAN;
|
l.s.tag = JSVAL_TAG_BOOLEAN;
|
||||||
l.s.payload.boo = b;
|
l.s.payload.boo = b;
|
||||||
return l;
|
return l;
|
||||||
@ -654,6 +658,10 @@ static JS_ALWAYS_INLINE jsval_layout
|
|||||||
BOOLEAN_TO_JSVAL_IMPL(JSBool b)
|
BOOLEAN_TO_JSVAL_IMPL(JSBool b)
|
||||||
{
|
{
|
||||||
jsval_layout l;
|
jsval_layout l;
|
||||||
|
|
||||||
|
// Happens if XPConnect hands out an illegal value (constructed from C++ through a PRBool, for
|
||||||
|
// instance).
|
||||||
|
JS_ASSERT(b == JS_TRUE || b == JS_FALSE);
|
||||||
l.asBits = ((uint64)(uint32)b) | JSVAL_SHIFTED_TAG_BOOLEAN;
|
l.asBits = ((uint64)(uint32)b) | JSVAL_SHIFTED_TAG_BOOLEAN;
|
||||||
return l;
|
return l;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user