summaryrefslogtreecommitdiffstats
path: root/js/src/vm/Interpreter.cpp
diff options
context:
space:
mode:
authorjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-25 18:24:06 +0200
committerjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-25 18:24:06 +0200
commitaafdd314442c903815f6fdf6072b001c25ae85c5 (patch)
tree2b299f6b553e13570478ea6b42a23d1cb3e653e9 /js/src/vm/Interpreter.cpp
parent05441d12b6bbc9dde268914fcfd374db61b83462 (diff)
downloadUXP-aafdd314442c903815f6fdf6072b001c25ae85c5.tar
UXP-aafdd314442c903815f6fdf6072b001c25ae85c5.tar.gz
UXP-aafdd314442c903815f6fdf6072b001c25ae85c5.tar.lz
UXP-aafdd314442c903815f6fdf6072b001c25ae85c5.tar.xz
UXP-aafdd314442c903815f6fdf6072b001c25ae85c5.zip
Bug 1357075 - Pad a nop to unwind to the scope just before a destructuring iterator close trynote
Issue #74
Diffstat (limited to 'js/src/vm/Interpreter.cpp')
-rw-r--r--js/src/vm/Interpreter.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/js/src/vm/Interpreter.cpp b/js/src/vm/Interpreter.cpp
index d20e5284d..b747e4d7a 100644
--- a/js/src/vm/Interpreter.cpp
+++ b/js/src/vm/Interpreter.cpp
@@ -1080,6 +1080,9 @@ js::UnwindEnvironmentToTryPc(JSScript* script, JSTryNote* tn)
if (tn->kind == JSTRY_CATCH || tn->kind == JSTRY_FINALLY) {
pc -= JSOP_TRY_LENGTH;
MOZ_ASSERT(*pc == JSOP_TRY);
+ } else if (tn->kind == JSTRY_DESTRUCTURING_ITERCLOSE) {
+ pc -= JSOP_TRY_DESTRUCTURING_ITERCLOSE_LENGTH;
+ MOZ_ASSERT(*pc == JSOP_TRY_DESTRUCTURING_ITERCLOSE);
}
return pc;
}
@@ -1917,7 +1920,7 @@ CASE(JSOP_UNUSED192)
CASE(JSOP_UNUSED209)
CASE(JSOP_UNUSED210)
CASE(JSOP_UNUSED211)
-CASE(JSOP_UNUSED220)
+CASE(JSOP_TRY_DESTRUCTURING_ITERCLOSE)
CASE(JSOP_UNUSED221)
CASE(JSOP_UNUSED222)
CASE(JSOP_UNUSED223)