From 6643750275a7c3503efeb4a3e259fc8a2aa22222 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Wed, 9 Dec 2020 09:45:02 +0100 Subject: [PATCH] Fix #108647 --- .../userDataSync/browser/userDataSyncWorkbenchService.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/vs/workbench/services/userDataSync/browser/userDataSyncWorkbenchService.ts b/src/vs/workbench/services/userDataSync/browser/userDataSyncWorkbenchService.ts index fb60356c3cb..41b78ea3741 100644 --- a/src/vs/workbench/services/userDataSync/browser/userDataSyncWorkbenchService.ts +++ b/src/vs/workbench/services/userDataSync/browser/userDataSyncWorkbenchService.ts @@ -30,6 +30,7 @@ import { isEqual } from 'vs/base/common/resources'; import { URI } from 'vs/base/common/uri'; import { IViewsService, ViewContainerLocation, IViewDescriptorService } from 'vs/workbench/common/views'; import { ILifecycleService } from 'vs/workbench/services/lifecycle/common/lifecycle'; +import { isWeb } from 'vs/base/common/platform'; type UserAccountClassification = { id: { classification: 'EndUserPseudonymizedInformation', purpose: 'BusinessInsight' }; @@ -268,7 +269,9 @@ export class UserDataSyncWorkbenchService extends Disposable implements IUserDat const syncTitle = SYNC_TITLE; const title = `${syncTitle} [(${localize('show log', "show log")})](command:${SHOW_SYNC_LOG_COMMAND_ID})`; const manualSyncTask = await this.userDataSyncService.createManualSyncTask(); - const disposable = this.lifecycleService.onBeforeShutdown(e => e.veto(this.onBeforeShutdown(manualSyncTask))); + const disposable = isWeb + ? Disposable.None /* In web long running shutdown handlers will not work */ + : this.lifecycleService.onBeforeShutdown(e => e.veto(this.onBeforeShutdown(manualSyncTask))); try { await this.syncBeforeTurningOn(title, manualSyncTask); -- GitLab