diff options
Diffstat (limited to 'editors/code/src/util.ts')
-rw-r--r-- | editors/code/src/util.ts | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/editors/code/src/util.ts b/editors/code/src/util.ts index 78fe6f5da..970fedb37 100644 --- a/editors/code/src/util.ts +++ b/editors/code/src/util.ts | |||
@@ -1,5 +1,4 @@ | |||
1 | import * as lc from "vscode-languageclient"; | 1 | import * as lc from "vscode-languageclient"; |
2 | import * as fs from "fs"; | ||
3 | import * as vscode from "vscode"; | 2 | import * as vscode from "vscode"; |
4 | import { strict as nativeAssert } from "assert"; | 3 | import { strict as nativeAssert } from "assert"; |
5 | import { spawnSync } from "child_process"; | 4 | import { spawnSync } from "child_process"; |
@@ -114,15 +113,12 @@ export function isRustEditor(editor: vscode.TextEditor): editor is RustEditor { | |||
114 | export function isValidExecutable(path: string): boolean { | 113 | export function isValidExecutable(path: string): boolean { |
115 | log.debug("Checking availability of a binary at", path); | 114 | log.debug("Checking availability of a binary at", path); |
116 | 115 | ||
117 | if (!fs.existsSync(path)) return false; | ||
118 | |||
119 | const res = spawnSync(path, ["--version"], { encoding: 'utf8' }); | 116 | const res = spawnSync(path, ["--version"], { encoding: 'utf8' }); |
120 | 117 | ||
121 | const isSuccess = res.status === 0; | 118 | const printOutput = res.error && (res.error as any).code !== 'ENOENT' ? log.warn : log.debug; |
122 | const printOutput = isSuccess ? log.debug : log.warn; | ||
123 | printOutput(path, "--version:", res); | 119 | printOutput(path, "--version:", res); |
124 | 120 | ||
125 | return isSuccess; | 121 | return res.status === 0; |
126 | } | 122 | } |
127 | 123 | ||
128 | /** Sets ['when'](https://code.visualstudio.com/docs/getstarted/keybindings#_when-clause-contexts) clause contexts */ | 124 | /** Sets ['when'](https://code.visualstudio.com/docs/getstarted/keybindings#_when-clause-contexts) clause contexts */ |