From b1be664f4d82e72bf34da8a0b4ed95e2b81f74ca Mon Sep 17 00:00:00 2001 From: Joe Goldin Date: Thu, 4 Jun 2026 04:12:02 -0700 Subject: [PATCH] gh-13027: fix window sync lockup that left synced tabs blank in new windows (gh-14012) --- src/zen/sessionstore/ZenWindowSync.sys.mjs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/zen/sessionstore/ZenWindowSync.sys.mjs b/src/zen/sessionstore/ZenWindowSync.sys.mjs index 12993d74b..1c1ba7b22 100644 --- a/src/zen/sessionstore/ZenWindowSync.sys.mjs +++ b/src/zen/sessionstore/ZenWindowSync.sys.mjs @@ -521,10 +521,13 @@ class nsZenWindowSync { if (flags & SYNC_FLAG_ICON) { aTargetItem.zenStaticIcon = aOriginalItem.zenStaticIcon; if (gBrowser.isTab(aOriginalItem)) { - gBrowser.setIcon( - aTargetItem, - aOriginalItem.getAttribute("image") || gBrowser.getIcon(aOriginalItem) - ); + try { + gBrowser.setIcon( + aTargetItem, + aOriginalItem.getAttribute("image") || + gBrowser.getIcon(aOriginalItem) + ); + } catch {} } else if (aOriginalItem.isZenFolder) { // Icons are a zen-only feature for tab groups. gZenFolders.setFolderUserIcon(aTargetItem, aOriginalItem.iconURL); @@ -1542,6 +1545,7 @@ class nsZenWindowSync { console.error(`Error moving active tabs to other windows on close:`, e); } resolve(); + this.#docShellSwitchPromise = null; } on_WindowCloseAndBrowserFlushed(aBrowsers) {