summaryrefslogtreecommitdiffstats
path: root/js/src/frontend/Parser.cpp
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-04 01:54:08 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-04 01:54:08 +0000
commit7443e3d6139ce4f0c822c23d1efb9c097419456d (patch)
tree8e2682b680f95eb05e7f15551464dd1a671b06e2 /js/src/frontend/Parser.cpp
parentReleasing progress-linux version 125.0.2-1~progress7.99u1. (diff)
downloadfirefox-7443e3d6139ce4f0c822c23d1efb9c097419456d.tar.xz
firefox-7443e3d6139ce4f0c822c23d1efb9c097419456d.zip
Merging upstream version 125.0.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'js/src/frontend/Parser.cpp')
-rw-r--r--js/src/frontend/Parser.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/js/src/frontend/Parser.cpp b/js/src/frontend/Parser.cpp
index 5cb47f2425..cd586ad2a7 100644
--- a/js/src/frontend/Parser.cpp
+++ b/js/src/frontend/Parser.cpp
@@ -10949,6 +10949,12 @@ GeneralParser<ParseHandler, Unit>::memberPropertyAccess(
if (handler_.isArgumentsName(lhs) && handler_.isLengthName(name)) {
MOZ_ASSERT(pc_->numberOfArgumentsNames > 0);
pc_->numberOfArgumentsNames--;
+ // Currently when resuming Generators don't get their argument length set
+ // in the interpreter frame (see InterpreterStack::resumeGeneratorCallFrame,
+ // and its call to initCallFrame).
+ if (pc_->isGeneratorOrAsync()) {
+ pc_->sc()->setIneligibleForArgumentsLength();
+ }
return handler_.newArgumentsLength(lhs, name);
}