diff --git a/src/vs/editor/contrib/hover/browser/modesContentHover.ts b/src/vs/editor/contrib/hover/browser/modesContentHover.ts index ee34fbc1c66..e0476023296 100644 --- a/src/vs/editor/contrib/hover/browser/modesContentHover.ts +++ b/src/vs/editor/contrib/hover/browser/modesContentHover.ts @@ -7,6 +7,7 @@ import 'vs/css!vs/base/browser/ui/progressbar/progressbar'; import * as nls from 'vs/nls'; import URI from 'vs/base/common/uri'; +import {onUnexpectedError} from 'vs/base/common/errors'; import {$} from 'vs/base/browser/dom'; import {TPromise} from 'vs/base/common/winjs.base'; import {renderMarkedString} from 'vs/base/browser/htmlContentRenderer'; @@ -244,7 +245,7 @@ export class ModesContentHoverWidget extends ContentHoverWidget { .forEach(contents => { const renderedContents = renderMarkedString(contents, { actionCallback: (content) => { - this._openerService.open(URI.parse(content)); + this._openerService.open(URI.parse(content)).then(void 0, onUnexpectedError); }, codeBlockRenderer: (modeId, value): string | TPromise => { const mode = this._modeService.getMode(modeId || this._editor.getModel().getModeId()); diff --git a/src/vs/editor/contrib/hover/browser/modesGlyphHover.ts b/src/vs/editor/contrib/hover/browser/modesGlyphHover.ts index 44e4ab30fd1..0e5d5818e9d 100644 --- a/src/vs/editor/contrib/hover/browser/modesGlyphHover.ts +++ b/src/vs/editor/contrib/hover/browser/modesGlyphHover.ts @@ -12,6 +12,7 @@ import {$} from 'vs/base/browser/dom'; import {renderMarkedString} from 'vs/base/browser/htmlContentRenderer'; import {IOpenerService, NullOpenerService} from 'vs/platform/opener/common/opener'; import URI from 'vs/base/common/uri'; +import {onUnexpectedError} from 'vs/base/common/errors'; import {TPromise} from 'vs/base/common/winjs.base'; import {IModeService} from 'vs/editor/common/services/modeService'; import {tokenizeToString} from 'vs/editor/common/modes/textToHtmlTokenizer'; @@ -154,7 +155,7 @@ export class ModesGlyphHoverWidget extends GlyphHoverWidget { messages.forEach((msg) => { const renderedContents = renderMarkedString(msg.value, { - actionCallback: content => this.openerService.open(URI.parse(content)), + actionCallback: content => this.openerService.open(URI.parse(content)).then(undefined, onUnexpectedError), codeBlockRenderer: (modeId, value): string | TPromise => { const mode = this.modeService.getMode(modeId || this._editor.getModel().getModeId()); const getMode = mode => mode ? TPromise.as(mode) : this.modeService.getOrCreateMode(modeId); diff --git a/src/vs/platform/opener/browser/openerService.ts b/src/vs/platform/opener/browser/openerService.ts index 8fccde38545..7d08710899c 100644 --- a/src/vs/platform/opener/browser/openerService.ts +++ b/src/vs/platform/opener/browser/openerService.ts @@ -68,6 +68,6 @@ export class OpenerService implements IOpenerService { }); } - return TPromise.as(promise).then(undefined, err => { }); // !ignores all errors + return TPromise.as(promise); } }