From aab04f7be0e282fcc25054af8259f4ce644c71be Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Sun, 10 Mar 2019 21:45:28 +0100 Subject: [PATCH 1/2] Unsaved files are opened in two windows when reopening vscode. Fixes #70006 --- src/vs/code/electron-main/windows.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/vs/code/electron-main/windows.ts b/src/vs/code/electron-main/windows.ts index 8f012a9315c4d..3aae735a3c4c0 100644 --- a/src/vs/code/electron-main/windows.ts +++ b/src/vs/code/electron-main/windows.ts @@ -687,8 +687,9 @@ export class WindowsManager implements IWindowsMainService { } // Handle empty to restore - if (emptyToRestore.length > 0) { - emptyToRestore.forEach(emptyWindowBackupInfo => { + const allEmptyToRestore = arrays.distinct(emptyToRestore, info => info.backupFolder); // prevent duplicates + if (allEmptyToRestore.length > 0) { + allEmptyToRestore.forEach(emptyWindowBackupInfo => { const remoteAuthority = emptyWindowBackupInfo.remoteAuthority; const fileInputsForWindow = (fileInputs && fileInputs.remoteAuthority === remoteAuthority) ? fileInputs : undefined; From 41efdc2bf9aa4cd6982291dcd4d5818c8e169186 Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Sun, 10 Mar 2019 22:38:37 +0100 Subject: [PATCH 2/2] fix null check --- src/vs/code/electron-main/windows.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/code/electron-main/windows.ts b/src/vs/code/electron-main/windows.ts index 3aae735a3c4c0..48390e395ba75 100644 --- a/src/vs/code/electron-main/windows.ts +++ b/src/vs/code/electron-main/windows.ts @@ -687,7 +687,7 @@ export class WindowsManager implements IWindowsMainService { } // Handle empty to restore - const allEmptyToRestore = arrays.distinct(emptyToRestore, info => info.backupFolder); // prevent duplicates + const allEmptyToRestore = arrays.distinct(emptyToRestore, info => info.backupFolder || ''); // prevent duplicates if (allEmptyToRestore.length > 0) { allEmptyToRestore.forEach(emptyWindowBackupInfo => { const remoteAuthority = emptyWindowBackupInfo.remoteAuthority;