Backed out changeset d14511be496e (bug 1294013) for Windows build bustage

This commit is contained in:
Iris Hsiao 2016-08-17 18:50:18 +08:00
Родитель 3de6cf478f
Коммит ccea2b0905
2 изменённых файлов: 14 добавлений и 11 удалений

Просмотреть файл

@ -1567,25 +1567,26 @@ Debugger::processResumptionValue(Maybe<AutoCompartment>& ac, AbstractFramePtr fr
JSTrapStatus
Debugger::parseResumptionValueHelper(Maybe<AutoCompartment>& ac, bool ok, const Value& rv,
const Maybe<HandleValue>& thisVForCheck, AbstractFramePtr frame,
MutableHandleValue vp)
MutableHandleValue vp, bool callHook)
{
vp.setUndefined();
if (!ok)
return handleUncaughtException(ac, vp, true, thisVForCheck, frame);
return handleUncaughtException(ac, vp, callHook, thisVForCheck, frame);
JSContext* cx = ac->context()->asJSContext();
RootedValue rvRoot(cx, rv);
JSTrapStatus status = JSTRAP_CONTINUE;
RootedValue v(cx);
if (!processResumptionValue(ac, frame, thisVForCheck, rvRoot, &status, &v))
return handleUncaughtException(ac, vp, true, thisVForCheck, frame);
return handleUncaughtException(ac, vp, callHook, thisVForCheck, frame);
vp.set(v);
return status;
}
JSTrapStatus
Debugger::parseResumptionValue(Maybe<AutoCompartment>& ac, bool ok, const Value& rv,
AbstractFramePtr frame, jsbytecode* pc, MutableHandleValue vp)
AbstractFramePtr frame, jsbytecode* pc, MutableHandleValue vp,
bool callHook)
{
JSContext* cx = ac->context()->asJSContext();
RootedValue rootThis(cx);
@ -1603,12 +1604,13 @@ Debugger::parseResumptionValue(Maybe<AutoCompartment>& ac, bool ok, const Value&
MOZ_ASSERT_IF(rootThis.isMagic(), rootThis.isMagic(JS_UNINITIALIZED_LEXICAL));
thisArg.emplace(HandleValue(rootThis));
}
return parseResumptionValueHelper(ac, ok, rv, thisArg, frame, vp);
return parseResumptionValueHelper(ac, ok, rv, thisArg, frame, vp, callHook);
}
JSTrapStatus
Debugger::parseResumptionValue(Maybe<AutoCompartment>& ac, bool ok, const Value& rv,
const Value& thisV, AbstractFramePtr frame, MutableHandleValue vp)
const Value& thisV, AbstractFramePtr frame, MutableHandleValue vp,
bool callHook)
{
JSContext* cx = ac->context()->asJSContext();
RootedValue rootThis(cx, thisV);
@ -1616,7 +1618,7 @@ Debugger::parseResumptionValue(Maybe<AutoCompartment>& ac, bool ok, const Value&
if (frame.debuggerNeedsCheckPrimitiveReturn())
thisArg.emplace(rootThis);
return parseResumptionValueHelper(ac, ok, rv, thisArg, frame, vp);
return parseResumptionValueHelper(ac, ok, rv, thisArg, frame, vp, callHook);
}
static bool
@ -1901,7 +1903,7 @@ Debugger::onTrap(JSContext* cx, MutableHandleValue vp)
Rooted<JSObject*> handler(cx, bp->handler);
bool ok = CallMethodIfPresent(cx, handler, "hit", 1, scriptFrame.address(), &rv);
JSTrapStatus st = dbg->parseResumptionValue(ac, ok, rv, iter.abstractFramePtr(),
iter.pc(), vp);
iter.pc(), vp, true);
if (st != JSTRAP_CONTINUE)
return st;

Просмотреть файл

@ -548,7 +548,8 @@ class Debugger : private mozilla::LinkedListElement<Debugger>
* return handleUncaughtException(ac, vp, callHook).
*/
JSTrapStatus parseResumptionValue(mozilla::Maybe<AutoCompartment>& ac, bool OK, const Value& rv,
AbstractFramePtr frame, jsbytecode* pc, MutableHandleValue vp);
AbstractFramePtr frame, jsbytecode* pc, MutableHandleValue vp,
bool callHook = true);
/*
* When we run the onEnterFrame hook, the |this| slot hasn't been fully
@ -559,11 +560,11 @@ class Debugger : private mozilla::LinkedListElement<Debugger>
*/
JSTrapStatus parseResumptionValue(mozilla::Maybe<AutoCompartment>& ac, bool OK, const Value& rv,
const Value& thisVForCheck, AbstractFramePtr frame,
MutableHandleValue vp);
MutableHandleValue vp, bool callHook = true);
JSTrapStatus parseResumptionValueHelper(mozilla::Maybe<AutoCompartment>& ac, bool ok, const Value& rv,
const mozilla::Maybe<HandleValue>& thisVForCheck, AbstractFramePtr frame,
MutableHandleValue vp);
MutableHandleValue vp, bool callHook);
bool processResumptionValue(mozilla::Maybe<AutoCompartment>& ac, AbstractFramePtr frame,
const mozilla::Maybe<HandleValue>& maybeThis, HandleValue rval,