diff options
| author | Lukas Wirth <lukastw97@gmail.com> | 2023-06-30 08:42:46 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-30 08:42:46 +0200 |
| commit | 7e7f401a81f160c2bf79612af7a79e72a9fffbc7 (patch) | |
| tree | 7799a68b9b33faa0abd8f2690af0b6e49cf74334 | |
| parent | 60d046f567239b102d064ae7391bcf8aa78784d1 (diff) | |
| download | rust-7e7f401a81f160c2bf79612af7a79e72a9fffbc7.tar.gz rust-7e7f401a81f160c2bf79612af7a79e72a9fffbc7.zip | |
Fix panic in handle_code_action
| -rw-r--r-- | crates/rust-analyzer/src/handlers/request.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/crates/rust-analyzer/src/handlers/request.rs b/crates/rust-analyzer/src/handlers/request.rs index 6f53d5f5fc2..b103341f3ca 100644 --- a/crates/rust-analyzer/src/handlers/request.rs +++ b/crates/rust-analyzer/src/handlers/request.rs @@ -1156,7 +1156,8 @@ pub(crate) fn handle_code_action( let code_action = to_proto::code_action(&snap, assist, resolve_data)?; // Check if the client supports the necessary `ResourceOperation`s. - if let Some(changes) = code_action.edit.as_ref().and_then(|it| &it.document_changes) { + let changes = code_action.edit.as_ref().and_then(|it| it.document_changes.as_ref()); + if let Some(changes) = changes { for change in changes { if let lsp_ext::SnippetDocumentChangeOperation::Op(res_op) = change { if let Err(err) = |
