зеркало из https://github.com/mozilla/pjs.git
Propagate exceptions from the evalcx context to the outer context so they can be caught. bug 353737, r+a=brendan
This commit is contained in:
Родитель
2e7790b1b2
Коммит
fa3819cf58
|
@ -2402,10 +2402,17 @@ EvalInContext(JSContext *cx, JSObject *obj, uintN argc, jsval *argv,
|
|||
} else {
|
||||
fp = JS_GetScriptedCaller(cx, NULL);
|
||||
JS_SetGlobalObject(scx, sobj);
|
||||
JS_ToggleOptions(scx, JSOPTION_DONT_REPORT_UNCAUGHT);
|
||||
ok = JS_EvaluateUCScript(scx, sobj, src, srclen,
|
||||
fp->script->filename,
|
||||
JS_PCToLineNumber(cx, fp->script, fp->pc),
|
||||
rval);
|
||||
if (!ok) {
|
||||
if (JS_GetPendingException(scx, &v))
|
||||
JS_SetPendingException(cx, v);
|
||||
else
|
||||
JS_ReportOutOfMemory(cx);
|
||||
}
|
||||
}
|
||||
|
||||
out:
|
||||
|
|
Загрузка…
Ссылка в новой задаче