diff options
Diffstat (limited to 'cli/lsp/language_server.rs')
-rw-r--r-- | cli/lsp/language_server.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/cli/lsp/language_server.rs b/cli/lsp/language_server.rs index 367be2c3b..5879a7491 100644 --- a/cli/lsp/language_server.rs +++ b/cli/lsp/language_server.rs @@ -1550,8 +1550,14 @@ impl Inner { match diagnostic.source.as_deref() { Some("deno-ts") => { let code = match diagnostic.code.as_ref().unwrap() { - NumberOrString::String(code) => code.to_string(), - NumberOrString::Number(code) => code.to_string(), + NumberOrString::String(code) => match code.parse() { + Ok(c) => c, + Err(e) => { + lsp_warn!("Invalid diagnostic code {code}: {e}"); + continue; + } + }, + NumberOrString::Number(code) => *code, }; let codes = vec![code]; let actions = self |