Bug 1662201 - Update history ID to mach the docshell ID of the SHEntry, r=peterv

Differential Revision: https://phabricator.services.mozilla.com/D88885
This commit is contained in:
Olli Pettay 2020-09-01 11:58:01 +00:00
parent 9129ef81c4
commit c9a464bdec
2 changed files with 3 additions and 2 deletions

View File

@ -309,6 +309,7 @@ CanonicalBrowsingContext::CreateLoadingSessionHistoryEntryForLoad(
aLoadState->GetLoadingSessionHistoryInfo();
if (existingLoadingInfo) {
entry = SessionHistoryEntry::GetByLoadId(existingLoadingInfo->mLoadId);
SetHistoryID(entry->DocshellID());
} else {
entry = new SessionHistoryEntry(aLoadState, aChannel);
entry->SetDocshellID(GetHistoryID());

View File

@ -238,6 +238,8 @@ class SessionHistoryEntry : public nsISHEntry {
mForInitialLoad = aForInitialLoad;
}
const nsID& DocshellID() const;
// Get an entry based on LoadingSessionHistoryInfo's mLoadId. Parent process
// only.
static SessionHistoryEntry* GetByLoadId(uint64_t aLoadId);
@ -247,8 +249,6 @@ class SessionHistoryEntry : public nsISHEntry {
friend struct LoadingSessionHistoryInfo;
virtual ~SessionHistoryEntry();
const nsID& DocshellID() const;
UniquePtr<SessionHistoryInfo> mInfo;
nsISHEntry* mParent = nullptr;
uint32_t mID;