diff --git a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts index 7b7ba3dde691e4b64d8e09d7f4065336940c9583..c211f46c15afd28585529b907d93d3311dbe0aef 100644 --- a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts +++ b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts @@ -1586,11 +1586,14 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer this.contextService, this.environmentService, AbstractTaskService.OutputChannelId, this.fileService, this.terminalInstanceService, this.pathService, this.viewDescriptorService, this.logService, - (workspaceFolder: IWorkspaceFolder) => { - if (!workspaceFolder) { + (workspaceFolder: IWorkspaceFolder | undefined) => { + if (workspaceFolder) { + return this._taskSystemInfos.get(workspaceFolder.uri.scheme); + } else if (this._taskSystemInfos.size > 0) { + return this._taskSystemInfos.values().next().value; + } else { return undefined; } - return this._taskSystemInfos.get(workspaceFolder.uri.scheme); } ); } diff --git a/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts b/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts index a73e2f7d2f37d2f1007258a2399d77485f896bcf..ffc8bb30a88a1e8a3c6603d207e5197516f06eb0 100644 --- a/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts +++ b/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.ts @@ -635,7 +635,7 @@ export class TerminalTaskSystem implements ITaskSystem { const folders = this.contextService.getWorkspace().folders; workspaceFolder = folders.length > 0 ? folders[0] : undefined; } - const systemInfo: TaskSystemInfo | undefined = this.currentTask.systemInfo = workspaceFolder ? this.taskSystemInfoResolver(workspaceFolder) : undefined; + const systemInfo: TaskSystemInfo | undefined = this.currentTask.systemInfo = this.taskSystemInfoResolver(workspaceFolder); let variables = new Set(); this.collectTaskVariables(variables, task); diff --git a/src/vs/workbench/contrib/tasks/common/taskSystem.ts b/src/vs/workbench/contrib/tasks/common/taskSystem.ts index 7f5b1758e18f91be36acdf9846ac9ea7ca1d5f5f..75c7dea7a92397ce64cf644bda86fd09a8d01301 100644 --- a/src/vs/workbench/contrib/tasks/common/taskSystem.ts +++ b/src/vs/workbench/contrib/tasks/common/taskSystem.ts @@ -125,7 +125,7 @@ export interface TaskSystemInfo { } export interface TaskSystemInfoResolver { - (workspaceFolder: IWorkspaceFolder): TaskSystemInfo | undefined; + (workspaceFolder: IWorkspaceFolder | undefined): TaskSystemInfo | undefined; } export interface ITaskSystem {