mirror of
https://github.com/roytam1/palemoon27.git
synced 2026-06-13 11:59:51 +00:00
import changes from `dev' branch of rmottola/Arctic-Fox:
- Bug 1209039 - Temporarily disable thread names in Moz2D to work around a static check failure CLOSED TREE. r=me (8c45ce9eb) - missing bit of Bug 1198216 - Check for presence of ICU::Timezone::recreateDefault() (e047330f1) - Bug 1233743 - Remove the Mutex typedef from gfx/2d. r=vlad (c1b5a3746) - Bug 1083101 - Implement gfx::DrawingJob. r=jrmuizel (22818c618) - Bug 1083101 - Extend DrawCommand storage functionality and fix a bug with dashed stroke patterns. r=jrmuizel (11daecf61) - Bug 1083101 - Make gfx::DrawingCommand methods const. r=jrmuizel (f5099f18d) - Bug 1127665 - Fix the condition of if-statement of name updating when the Bluetoooth device paired. r=btian (a751b7b6c) - Bug 1128383 - [bluetooth2] Add adapter.onpairingaborted event handler, f=jocelyn, f=jaliu, r=shuang, r=bz (cc9fe48d9) - Bug 1054756, part 3 - Implement Symbol.toPrimitive. Replace existing convert hooks with methods. r=jandem. (4c3db3ac3) - Bug 1083101 - Make SyncObject's waiting jobs list lock-free. r=jrmuizel (a5793e016) - pointer style (80bb87e64) - Bug 1207006 - Remove the unhelpfully-confusing exceptionCodeIndented. r=bz (5fc73954b) - pointer style (f46f24dfb) - Bug 1145854 - Don't leak WrapperOwner::className's string. r=billm (6e83a9377) - Bug 1187234 - Throw a TypeError when Array.isArray is passed a revoked proxy. r=efaust (75e166521) - Bug 1164764 - Make all the various DeadObjectProxy handler methods call a single function to report a dead object, rather than repeating the same function call/arguments everywhere. r=evilpies (686daa9d2)
This commit is contained in:
@@ -11,6 +11,8 @@
|
||||
#include "jsobjinlines.h"
|
||||
|
||||
using namespace js;
|
||||
|
||||
using JS::IsArrayAnswer;
|
||||
using mozilla::ArrayLength;
|
||||
|
||||
static inline bool
|
||||
@@ -1103,20 +1105,19 @@ bool
|
||||
ScriptedDirectProxyHandler::objectClassIs(HandleObject proxy, ESClassValue classValue,
|
||||
JSContext* cx) const
|
||||
{
|
||||
// Special case IsArray. In every other instance ES wants to have exactly
|
||||
// one object type and not a proxy around it, so return false.
|
||||
if (classValue != ESClass_IsArray)
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
|
||||
// In ES6 IsArray is supposed to poke at the Proxy target, instead we do this here.
|
||||
// The reason for this is that we have proxies for which looking at the target might
|
||||
// be impossible. So instead we use our little objectClassIs function that just works
|
||||
// already across different wrappers.
|
||||
bool
|
||||
ScriptedDirectProxyHandler::isArray(JSContext* cx, HandleObject proxy,
|
||||
IsArrayAnswer* answer) const
|
||||
{
|
||||
RootedObject target(cx, proxy->as<ProxyObject>().target());
|
||||
if (!target)
|
||||
return false;
|
||||
if (target)
|
||||
return JS::IsArray(cx, target, answer);
|
||||
|
||||
return IsArray(target, cx);
|
||||
*answer = IsArrayAnswer::RevokedProxy;
|
||||
return true;
|
||||
}
|
||||
|
||||
const char*
|
||||
|
||||
Reference in New Issue
Block a user