commit 20a23bdc4250219a2ab290038b17338d365729fa
parent 23a1f7521c6f631ddc95712338ff6309432eafca
Author: David P. <daparks@mozilla.com>
Date: Thu, 23 Oct 2025 16:53:21 +0000
Bug 1995368: Fix saved group tab storage removal in backups r=fchasen
From the review for bug 1994513, `savedGroups` tab entries contain a state
object, the way `_closedTabs` does (but `tabs` does not).
Differential Revision: https://phabricator.services.mozilla.com/D269276
Diffstat:
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/browser/components/backup/resources/SessionStoreBackupResource.sys.mjs b/browser/components/backup/resources/SessionStoreBackupResource.sys.mjs
@@ -65,7 +65,7 @@ export class SessionStoreBackupResource extends BackupResource {
if (sessionStoreState.savedGroups) {
sessionStoreState.savedGroups.forEach(group => {
if (group.tabs) {
- group.tabs.forEach(tab => delete tab.storage);
+ group.tabs.forEach(tab => delete tab.state.storage);
}
});
}
diff --git a/browser/components/backup/tests/xpcshell/test_SessionStoreBackupResource_mockSessionStore.js b/browser/components/backup/tests/xpcshell/test_SessionStoreBackupResource_mockSessionStore.js
@@ -87,15 +87,19 @@ const mockSessionStore = {
{
tabs: [
{
- savedGroupData: -3.7,
- storage: {
- message: "I don't get serialized!",
+ state: {
+ savedGroupData: -3.7,
+ storage: {
+ message: "I don't get serialized!",
+ },
},
},
{
- someData: "hi I am window #2's data",
- moreData: -3.71,
- // tab has no storage
+ state: {
+ someData: "hi I am window #2's data",
+ moreData: -3.71,
+ // tab has no storage
+ },
},
],
notTabData: "notTabData",
@@ -112,7 +116,7 @@ filteredMockSessionData.windows.forEach(win => {
win._closedTabs.forEach(closedTab => delete closedTab.state.storage);
});
filteredMockSessionData.savedGroups.forEach(group => {
- group.tabs.forEach(tab => delete tab.storage);
+ group.tabs.forEach(tab => delete tab.state.storage);
});
/**