Skip to content

Failure message from Variables request to debugger extension is not surfaced #85645

@gjsjohnmurray

Description

@gjsjohnmurray

Issue Type: Bug

Similar to #80464.

The code at

private async fetchVariables(start: number | undefined, count: number | undefined, filter: 'indexed' | 'named' | undefined): Promise<Variable[]> {
try {
const response = await this.session!.variables(this.reference || 0, this.threadId, filter, start, count);
return response && response.body && response.body.variables
? distinct(response.body.variables.filter(v => !!v && isString(v.name)), (v: DebugProtocol.Variable) => v.name).map((v: DebugProtocol.Variable) =>
new Variable(this.session, this.threadId, this, v.variablesReference, v.name, v.evaluateName, v.value, v.namedVariables, v.indexedVariables, v.presentationHint, v.type))
: [];
} catch (e) {
return [new Variable(this.session, this.threadId, this, 0, e.message, e.message, '', 0, 0, { kind: 'virtual' }, undefined, false)];
}
}
caters for an exception thrown by a debugging extension. But they never do that. What they do is return response.success: false and a message in response.message

VS Code version: Code - Insiders 1.41.0-insider (a8158ae, 2019-11-26T21:13:19.311Z)
OS version: Windows_NT x64 10.0.17763

Metadata

Metadata

Assignees

Labels

bugIssue identified by VS Code Team member as probable bugdebugDebug viewlet, configurations, breakpoints, adapter issuesverifiedVerification succeeded

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions