tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit c4fe8d43e866af1f61ee8d290e58b3fde2b5ae8a
parent b50fa947578139fcb65afbb837027e581bc3276f
Author: Adam Vandolder <avandolder@mozilla.com>
Date:   Wed, 26 Nov 2025 16:34:53 +0000

Bug 2002556 - Fire dispose events on NHEs in the correct order. r=dom-core,farre

Differential Revision: https://phabricator.services.mozilla.com/D274135

Diffstat:
Mdom/navigation/Navigation.cpp | 6+++---
Dtesting/web-platform/meta/navigation-api/per-entry-events/dispose-same-document-intercept.html.ini | 3---
Dtesting/web-platform/meta/navigation-api/per-entry-events/dispose-same-document.html.ini | 3---
3 files changed, 3 insertions(+), 9 deletions(-)

diff --git a/dom/navigation/Navigation.cpp b/dom/navigation/Navigation.cpp @@ -364,9 +364,9 @@ void Navigation::UpdateEntriesForSameDocumentNavigation( MOZ_LOG(gNavigationAPILog, LogLevel::Debug, ("Push navigation")); mCurrentEntryIndex = Some(mCurrentEntryIndex ? *mCurrentEntryIndex + 1 : 0); - while (*mCurrentEntryIndex < mEntries.Length()) { - disposedEntries.AppendElement(mEntries.PopLastElement()); - } + disposedEntries.AppendElements(Span(mEntries).From(*mCurrentEntryIndex)); + mEntries.RemoveElementsAt(*mCurrentEntryIndex, + mEntries.Length() - *mCurrentEntryIndex); mEntries.AppendElement(MakeRefPtr<NavigationHistoryEntry>( GetOwnerGlobal(), aDestinationSHE, *mCurrentEntryIndex)); break; diff --git a/testing/web-platform/meta/navigation-api/per-entry-events/dispose-same-document-intercept.html.ini b/testing/web-platform/meta/navigation-api/per-entry-events/dispose-same-document-intercept.html.ini @@ -1,3 +0,0 @@ -[dispose-same-document-intercept.html] - [dispose events when forward-pruning same-document entries] - expected: FAIL diff --git a/testing/web-platform/meta/navigation-api/per-entry-events/dispose-same-document.html.ini b/testing/web-platform/meta/navigation-api/per-entry-events/dispose-same-document.html.ini @@ -1,3 +0,0 @@ -[dispose-same-document.html] - [dispose events when forward-pruning same-document entries] - expected: FAIL