LibWeb: Recompute targetStep once more in "apply the history step"
This is an ad-hoc change to account for the fact that we may run
arbitrary code while waiting for the tasks in this function to complete.
Same exact idea as ac48222ed7
, once again.
This commit is contained in:
parent
b82e34ed00
commit
102cf345ba
Notes:
github-actions[bot]
2024-11-03 16:52:40 +00:00
Author: https://github.com/awesomekling Commit: https://github.com/LadybirdBrowser/ladybird/commit/102cf345bad Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/2130
1 changed files with 4 additions and 0 deletions
|
@ -798,6 +798,10 @@ TraversableNavigable::HistoryStepResult TraversableNavigable::apply_the_history_
|
|||
// 16. Let completedNonchangingJobs be 0.
|
||||
IGNORE_USE_IN_ESCAPING_LAMBDA auto completed_non_changing_jobs = 0u;
|
||||
|
||||
// AD-HOC: We re-compute targetStep here, since it might have changed since the last time we computed it.
|
||||
// This can happen if navigables are destroyed while we wait for tasks to complete.
|
||||
target_step = get_the_used_step(step);
|
||||
|
||||
// 17. Let (scriptHistoryLength, scriptHistoryIndex) be the result of getting the history object length and index given traversable and targetStep.
|
||||
auto length_and_index = get_the_history_object_length_and_index(target_step);
|
||||
IGNORE_USE_IN_ESCAPING_LAMBDA auto script_history_length = length_and_index.script_history_length;
|
||||
|
|
Loading…
Add table
Reference in a new issue