mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-07 08:18:41 +09:00
Bug 1342553, Bug 1343072, Bug 1344753 (details in the description)
Bug 1342553 - Part 0.1: Use try-catch for IteratorClose in for-of Bug 1343072 - Update HasLiveStackValueAtDepth to follow the change in JSTRY_FOR_OF Bug 1344753 - Update for-of stack depth in ControlFlowGenerator::processWhileOrForInLoop Issue #74
This commit is contained in:
parent
b0960bf497
commit
444483bf81
11 changed files with 378 additions and 189 deletions
|
|
@ -509,16 +509,10 @@ HasLiveStackValueAtDepth(JSScript* script, jsbytecode* pc, uint32_t stackDepth)
|
|||
break;
|
||||
|
||||
case JSTRY_FOR_OF:
|
||||
// For-of loops have both the iterator and the result object on
|
||||
// stack. The iterator is below the result object.
|
||||
if (stackDepth == tn->stackDepth - 1)
|
||||
return true;
|
||||
break;
|
||||
|
||||
case JSTRY_ITERCLOSE:
|
||||
// Code that need to call IteratorClose have the iterator on the
|
||||
// stack.
|
||||
if (stackDepth == tn->stackDepth)
|
||||
// For-of loops have the iterator, the result object, and the value
|
||||
// of the result object on stack. The iterator is below the result
|
||||
// object and the value.
|
||||
if (stackDepth == tn->stackDepth - 2)
|
||||
return true;
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue