Merge from vscode 17c6d123d212f90300429ecad3fc96fcec6e338f (#9423)

This commit is contained in:
Anthony Dresser
2020-03-03 02:19:34 -08:00
committed by GitHub
parent 00d0e4778b
commit 886329cd67
7 changed files with 21 additions and 7 deletions

View File

@@ -613,6 +613,8 @@ export class ElectronWindow extends Disposable {
}
private trackClosedWaitFiles(waitMarkerFile: URI, resourcesToWaitFor: URI[]): IDisposable {
let remainingResourcesToWaitFor = resourcesToWaitFor.slice(0);
// In wait mode, listen to changes to the editors and wait until the files
// are closed that the user wants to wait for. When this happens we delete
// the wait marker file to signal to the outside that editing is done.
@@ -622,7 +624,7 @@ export class ElectronWindow extends Disposable {
// Remove from resources to wait for based on the
// resources from editors that got closed
resourcesToWaitFor = resourcesToWaitFor.filter(resourceToWaitFor => {
remainingResourcesToWaitFor = remainingResourcesToWaitFor.filter(resourceToWaitFor => {
if (isEqual(resourceToWaitFor, masterResource) || isEqual(resourceToWaitFor, detailsResource)) {
return false; // remove - the closing editor matches this resource
}
@@ -630,7 +632,7 @@ export class ElectronWindow extends Disposable {
return true; // keep - not yet closed
});
if (resourcesToWaitFor.length === 0) {
if (remainingResourcesToWaitFor.length === 0) {
// If auto save is configured with the default delay (1s) it is possible
// to close the editor while the save still continues in the background. As such
// we have to also check if the files to wait for are dirty and if so wait