You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Gate nested navigation on cancelable beforeunload #577
Nested document navigation and document.open() replacement retired the current realm without first giving its cancelable beforeunload handler a synchronous decision point. A veto must preserve the current document generation, tasks, resource ownership and stable WindowProxy; reentrant same-frame navigation must not corrupt lifecycle state.
Implemented boundary
Dispatch synchronous cancelable nested beforeunload before iframe src navigation and document.open() replacement.
Apply the decision before pagehide, generation advance, task retirement and resource teardown.
Preserve the initiating source, current realm/generation/tasks and stable WindowProxy on veto.
Guard same-frame reentrant navigation while allowing sibling document work.
Keep detach non-cancelable.
Add WPT-shaped/native source contracts, a 100-veto/allowed-navigation source gate and a validation/deferred-work note.
Activity