summaryrefslogtreecommitdiff
path: root/cli/lsp/language_server.rs
diff options
context:
space:
mode:
authorKitson Kelly <me@kitsonkelly.com>2021-08-19 13:19:12 +1000
committerGitHub <noreply@github.com>2021-08-19 13:19:12 +1000
commit0d83afd93973cf4051aa73a0a05a78b451763d33 (patch)
treeba97847619ed540356f06a6db811e5a8c039ae5c /cli/lsp/language_server.rs
parentbf0bacbc0ec3bd7ef1c55ddc01ef44b2ce593d4a (diff)
fix(lsp): better handling of languageId (#11755)
Fixes #11521 Fixes #11742
Diffstat (limited to 'cli/lsp/language_server.rs')
-rw-r--r--cli/lsp/language_server.rs22
1 files changed, 15 insertions, 7 deletions
diff --git a/cli/lsp/language_server.rs b/cli/lsp/language_server.rs
index 9fbe6be5d..9926ac0e4 100644
--- a/cli/lsp/language_server.rs
+++ b/cli/lsp/language_server.rs
@@ -772,13 +772,21 @@ impl Inner {
// already managed by the language service
return;
}
- let language_id = match params.text_document.language_id.parse() {
- Ok(language_id) => language_id,
- Err(err) => {
- error!("{}", err);
- LanguageId::TypeScript
- }
- };
+ let language_id =
+ params
+ .text_document
+ .language_id
+ .parse()
+ .unwrap_or_else(|err| {
+ error!("{}", err);
+ LanguageId::Unknown
+ });
+ if language_id == LanguageId::Unknown {
+ warn!(
+ "Unsupported language id \"{}\" received for document \"{}\".",
+ params.text_document.language_id, params.text_document.uri
+ );
+ }
let media_type = MediaType::from(&language_id);
self.documents.open(
specifier.clone(),