提交 0851a2aa 编写于 作者: D Dirk Baeumer

Fixes #23756: Insiders can't find existing preLaunchTask

上级 11a11588
......@@ -893,11 +893,12 @@ class TaskService extends EventEmitter implements ITaskService {
}
private computeWorkspaceTasks(): TPromise<WorkspaceTaskResult> {
let configPromise: TPromise<{ config: TaskConfig.ExternalTaskRunnerConfiguration; hasErrors: boolean }>;
{
let { config, hasParseErrors } = this.getConfiguration();
if (hasParseErrors) {
return TPromise.as({ taskSet: undefined, hasErrors: true });
}
let configPromise: TPromise<{ config: TaskConfig.ExternalTaskRunnerConfiguration; hasErrors: boolean }>;
if (config) {
let engine = TaskConfig.ExecutionEngine.from(config);
if (engine === ExecutionEngine.Process && this.hasDetectorSupport(config)) {
......@@ -932,13 +933,14 @@ class TaskService extends EventEmitter implements ITaskService {
return { config: value.config, hasErrors };
});
}
return configPromise.then((value) => {
}
return configPromise.then((resolved) => {
return ProblemMatcherRegistry.onReady().then(() => {
if (!value || !value.config) {
return { taskSet: undefined, hasErrors: value !== void 0 ? value.hasErrors : false };
if (!resolved || !resolved.config) {
return { taskSet: undefined, hasErrors: resolved !== void 0 ? resolved.hasErrors : false };
}
let problemReporter = new ProblemReporter(this.outputChannel);
let parseResult = TaskConfig.parse(config, problemReporter);
let parseResult = TaskConfig.parse(resolved.config, problemReporter);
let hasErrors = false;
if (!parseResult.validationStatus.isOK()) {
hasErrors = true;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册