mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-28 18:47:15 +02:00
LibJS: Check for exception after executing (do)while test expression
Otherwise we crash the interpreter when an exception is thrown during
evaluation of the while or do/while test expression - which is easily
caused by a ReferenceError - e.g.:
while (someUndefinedVariable) {
// ...
}
This commit is contained in:
committed by
Andreas Kling
parent
a19d8aade4
commit
82ac936a9d
Notes:
sideshowbarker
2024-07-19 01:47:14 +09:00
Author: https://github.com/linusg Commit: https://github.com/SerenityOS/serenity/commit/82ac936a9d5 Pull-request: https://github.com/SerenityOS/serenity/pull/3822
@@ -17,3 +17,9 @@ test("does not loop when initially false", () => {
|
||||
expect().fail();
|
||||
}
|
||||
});
|
||||
|
||||
test("exception in test expression", () => {
|
||||
expect(() => {
|
||||
while (foo);
|
||||
}).toThrow(ReferenceError);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user