Skip to content

Commit 59d0ead

Browse files
committed
debug: npe
fixes microsoft#56637
1 parent f2c62ea commit 59d0ead

1 file changed

Lines changed: 35 additions & 38 deletions

File tree

src/vs/workbench/parts/debug/electron-browser/rawDebugSession.ts

Lines changed: 35 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -427,47 +427,44 @@ export class RawDebugSession implements IRawSession {
427427
}
428428

429429
private dispatchRequest(request: DebugProtocol.Request): void {
430+
const response: DebugProtocol.Response = {
431+
type: 'response',
432+
seq: 0,
433+
command: request.command,
434+
request_seq: request.seq,
435+
success: true
436+
};
437+
const sendResponse = (response) => this.debugAdapter && this.debugAdapter.sendResponse(response);
438+
439+
if (request.command === 'runInTerminal') {
440+
441+
this._debugger.runInTerminal(<DebugProtocol.RunInTerminalRequestArguments>request.arguments).then(_ => {
442+
response.body = {};
443+
sendResponse(response);
444+
}, err => {
445+
response.success = false;
446+
response.message = err.message;
447+
sendResponse(response);
448+
});
430449

431-
if (this.debugAdapter) {
432-
433-
const response: DebugProtocol.Response = {
434-
type: 'response',
435-
seq: 0,
436-
command: request.command,
437-
request_seq: request.seq,
438-
success: true
439-
};
440-
441-
if (request.command === 'runInTerminal') {
442-
443-
this._debugger.runInTerminal(<DebugProtocol.RunInTerminalRequestArguments>request.arguments).then(_ => {
444-
response.body = {};
445-
this.debugAdapter.sendResponse(response);
446-
}, err => {
447-
response.success = false;
448-
response.message = err.message;
449-
this.debugAdapter.sendResponse(response);
450-
});
451-
452-
} else if (request.command === 'handshake') {
453-
try {
454-
const vsda = <any>require.__$__nodeRequire('vsda');
455-
const obj = new vsda.signer();
456-
const sig = obj.sign(request.arguments.value);
457-
response.body = {
458-
signature: sig
459-
};
460-
this.debugAdapter.sendResponse(response);
461-
} catch (e) {
462-
response.success = false;
463-
response.message = e.message;
464-
this.debugAdapter.sendResponse(response);
465-
}
466-
} else {
450+
} else if (request.command === 'handshake') {
451+
try {
452+
const vsda = <any>require.__$__nodeRequire('vsda');
453+
const obj = new vsda.signer();
454+
const sig = obj.sign(request.arguments.value);
455+
response.body = {
456+
signature: sig
457+
};
458+
sendResponse(response);
459+
} catch (e) {
467460
response.success = false;
468-
response.message = `unknown request '${request.command}'`;
469-
this.debugAdapter.sendResponse(response);
461+
response.message = e.message;
462+
sendResponse(response);
470463
}
464+
} else {
465+
response.success = false;
466+
response.message = `unknown request '${request.command}'`;
467+
sendResponse(response);
471468
}
472469
}
473470

0 commit comments

Comments
 (0)