Commit 31cc5992 authored by Hiroshige Hayashizaki's avatar Hiroshige Hayashizaki Committed by Commit Bot

Simplify TryCatch::CanContinue() checks

This CL assumes that:

  If `TryCatch::CanContinue()` is false for a `TryCatch`,
  `TryCatch::CanContinue()` is false for all outer `TryCatch`es.

At least this holds for forcible worker termination.
(test: https://chromium-review.googlesource.com/c/chromium/src/+/2355160)

This CL refactors the code based on this assumption.
This will make upcoming refactoring simpler.

Bug: 1111134
Change-Id: I041209b2bcc8cd28112987a5a97f55e3fa180c71
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2409481
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: default avatarKenichi Ishibashi <bashi@chromium.org>
Reviewed-by: default avatarYuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/master@{#808218}
parent 874d0056
...@@ -368,12 +368,11 @@ ClassicEvaluationResult WorkerOrWorkletScriptController::EvaluateAndReturnValue( ...@@ -368,12 +368,11 @@ ClassicEvaluationResult WorkerOrWorkletScriptController::EvaluateAndReturnValue(
// script evaluation code paths. // script evaluation code paths.
if (!block.CanContinue()) { if (!block.CanContinue()) {
ForbidExecution(); ForbidExecution();
}
if (IsExecutionForbidden()) {
return ClassicEvaluationResult(); return ClassicEvaluationResult();
} }
CHECK(!IsExecutionForbidden());
if (!block.HasCaught()) { if (!block.HasCaught()) {
// Step 10. If evaluationStatus is a normal completion, then return // Step 10. If evaluationStatus is a normal completion, then return
// evaluationStatus. [spec text] // evaluationStatus. [spec text]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment