From 7f1875946fc12eb3191fe66e9bdeb5dad256a4a0 Mon Sep 17 00:00:00 2001 From: isidor Date: Mon, 2 May 2016 12:44:38 +0200 Subject: [PATCH] fixes #4608 --- src/vs/workbench/parts/debug/browser/debugViewer.ts | 7 ++++++- .../workbench/parts/debug/browser/media/debugViewlet.css | 4 ++++ src/vs/workbench/parts/debug/common/debugModel.ts | 5 +++-- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/vs/workbench/parts/debug/browser/debugViewer.ts b/src/vs/workbench/parts/debug/browser/debugViewer.ts index e176381b522..49a27f596bd 100644 --- a/src/vs/workbench/parts/debug/browser/debugViewer.ts +++ b/src/vs/workbench/parts/debug/browser/debugViewer.ts @@ -324,7 +324,12 @@ export class CallStackRenderer implements tree.IRenderer { data.label.textContent = stackFrame.name; data.label.title = stackFrame.name; data.fileName.textContent = getSourceName(stackFrame.source, this.contextService); - data.lineNumber.textContent = (stackFrame.source.available && stackFrame.lineNumber !== undefined) ? `${ stackFrame.lineNumber }` : ''; + if (stackFrame.source.available && stackFrame.lineNumber !== undefined) { + data.lineNumber.textContent = `${ stackFrame.lineNumber }`; + dom.removeClass(data.lineNumber, 'unavailable'); + } else { + dom.addClass(data.lineNumber, 'unavailable'); + } } public disposeTemplate(tree: tree.ITree, templateId: string, templateData: any): void { diff --git a/src/vs/workbench/parts/debug/browser/media/debugViewlet.css b/src/vs/workbench/parts/debug/browser/media/debugViewlet.css index aa4a89bcad1..08a3c0a595e 100644 --- a/src/vs/workbench/parts/debug/browser/media/debugViewlet.css +++ b/src/vs/workbench/parts/debug/browser/media/debugViewlet.css @@ -142,6 +142,10 @@ float: right; } +.debug-viewlet .debug-call-stack .stack-frame > .file > .line-number.unavailable { + display: none; +} + .debug-viewlet .debug-call-stack > .monaco-tree-row:not(.selected) .stack-frame > .file { color: rgba(108, 108, 108, 0.8); } diff --git a/src/vs/workbench/parts/debug/common/debugModel.ts b/src/vs/workbench/parts/debug/common/debugModel.ts index c154729af7c..63b95a6b5cd 100644 --- a/src/vs/workbench/parts/debug/common/debugModel.ts +++ b/src/vs/workbench/parts/debug/common/debugModel.ts @@ -15,6 +15,7 @@ import debug = require('vs/workbench/parts/debug/common/debug'); import { Source } from 'vs/workbench/parts/debug/common/debugSource'; const MAX_REPL_LENGTH = 10000; +const UNKNOWN_SOURCE_LABEL = nls.localize('unknownSource', "Unknown Source"); function resolveChildren(debugService: debug.IDebugService, parent: debug.IExpressionContainer): TPromise { const session = debugService.getActiveSession(); @@ -144,10 +145,10 @@ export class Thread implements debug.IThread { this.stoppedDetails.totalFrames = response.body.totalFrames; return response.body.stackFrames.map((rsf, level) => { if (!rsf) { - return new StackFrame(this.threadId, 0, new Source({ name: 'unknown' }, false), nls.localize('unknownStack', "Unknown stack location"), undefined, undefined); + return new StackFrame(this.threadId, 0, new Source({ name: UNKNOWN_SOURCE_LABEL }, false), nls.localize('unknownStack', "Unknown stack location"), undefined, undefined); } - return new StackFrame(this.threadId, rsf.id, rsf.source ? new Source(rsf.source) : new Source({ name: 'unknown' }, false), rsf.name, rsf.line, rsf.column); + return new StackFrame(this.threadId, rsf.id, rsf.source ? new Source(rsf.source) : new Source({ name: UNKNOWN_SOURCE_LABEL }, false), rsf.name, rsf.line, rsf.column); }); }); } -- GitLab