diff options
-rw-r--r-- | browser/components/sessionstore/SessionStore.sys.mjs | 27 | ||||
-rw-r--r-- | browser/config/version.txt | 2 | ||||
-rw-r--r-- | browser/config/version_display.txt | 2 | ||||
-rw-r--r-- | config/milestone.txt | 2 | ||||
-rw-r--r-- | sourcestamp.txt | 4 |
5 files changed, 23 insertions, 14 deletions
diff --git a/browser/components/sessionstore/SessionStore.sys.mjs b/browser/components/sessionstore/SessionStore.sys.mjs index 602986e529..2c50de65f8 100644 --- a/browser/components/sessionstore/SessionStore.sys.mjs +++ b/browser/components/sessionstore/SessionStore.sys.mjs @@ -1422,6 +1422,13 @@ var SessionStoreInternal = { * and thus enables communication with OOP tabs. */ receiveMessage(aMessage) { + if (Services.appinfo.sessionHistoryInParent) { + throw new Error( + `received unexpected message '${aMessage.name}' with ` + + `sessionHistoryInParent enabled` + ); + } + // If we got here, that means we're dealing with a frame message // manager message, so the target will be a <xul:browser>. var browser = aMessage.target; @@ -1600,14 +1607,14 @@ var SessionStoreInternal = { // internal data about the window. aWindow.__SSi = this._generateWindowID(); - let mm = aWindow.getGroupMessageManager("browsers"); - MESSAGES.forEach(msg => { - let listenWhenClosed = CLOSED_MESSAGES.has(msg); - mm.addMessageListener(msg, this, listenWhenClosed); - }); - - // Load the frame script after registering listeners. if (!Services.appinfo.sessionHistoryInParent) { + let mm = aWindow.getGroupMessageManager("browsers"); + MESSAGES.forEach(msg => { + let listenWhenClosed = CLOSED_MESSAGES.has(msg); + mm.addMessageListener(msg, this, listenWhenClosed); + }); + + // Load the frame script after registering listeners. mm.loadFrameScript( "chrome://browser/content/content-sessionStore.js", true, @@ -2083,8 +2090,10 @@ var SessionStoreInternal = { // Cache the window state until it is completely gone. DyingWindowCache.set(aWindow, winData); - let mm = aWindow.getGroupMessageManager("browsers"); - MESSAGES.forEach(msg => mm.removeMessageListener(msg, this)); + if (!Services.appinfo.sessionHistoryInParent) { + let mm = aWindow.getGroupMessageManager("browsers"); + MESSAGES.forEach(msg => mm.removeMessageListener(msg, this)); + } this._saveableClosedWindowData.delete(winData); delete aWindow.__SSi; diff --git a/browser/config/version.txt b/browser/config/version.txt index 9423409c32..1193934057 100644 --- a/browser/config/version.txt +++ b/browser/config/version.txt @@ -1 +1 @@ -115.9.0 +115.9.1 diff --git a/browser/config/version_display.txt b/browser/config/version_display.txt index f95bb6139e..fc8a0f7a39 100644 --- a/browser/config/version_display.txt +++ b/browser/config/version_display.txt @@ -1 +1 @@ -115.9.0esr +115.9.1esr diff --git a/config/milestone.txt b/config/milestone.txt index d560f90433..dcd6ae320c 100644 --- a/config/milestone.txt +++ b/config/milestone.txt @@ -10,4 +10,4 @@ # hardcoded milestones in the tree from these two files. #-------------------------------------------------------- -115.9.0 +115.9.1 diff --git a/sourcestamp.txt b/sourcestamp.txt index af949c5568..ef309a6a3f 100644 --- a/sourcestamp.txt +++ b/sourcestamp.txt @@ -1,2 +1,2 @@ -20240314014136 -https://hg.mozilla.org/releases/mozilla-esr115/rev/423e963b3d9b923e3c7fae8eae2f626f02c15cf2 +20240321223417 +https://hg.mozilla.org/releases/mozilla-esr115/rev/f65068dc82bf6051f520551ba5497a5985877d47 |