aboutsummaryrefslogtreecommitdiff
path: root/helix-term/src/commands/lsp.rs
diff options
context:
space:
mode:
authorBlaž Hrastnik2022-06-20 20:47:48 +0000
committerBlaž Hrastnik2022-06-21 17:26:24 +0000
commit23b5b1e25aca1dbed87fef18cc72b16852ba40a8 (patch)
tree21534a9c7ed846a51732b8cba59321e8ffdb8dac /helix-term/src/commands/lsp.rs
parent19dccade7c44619bfa414a711fe72a612e4ca358 (diff)
Remove a couple more unwraps
Diffstat (limited to 'helix-term/src/commands/lsp.rs')
-rw-r--r--helix-term/src/commands/lsp.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/helix-term/src/commands/lsp.rs b/helix-term/src/commands/lsp.rs
index b8c5e5d1..6f75fb49 100644
--- a/helix-term/src/commands/lsp.rs
+++ b/helix-term/src/commands/lsp.rs
@@ -61,7 +61,14 @@ fn jump_to_location(
return;
}
};
- let _id = editor.open(&path, action).expect("editor.open failed");
+ match editor.open(&path, action) {
+ Ok(_) => (),
+ Err(err) => {
+ let err = format!("failed to open path: {:?}: {:?}", location.uri, err);
+ editor.set_error(err);
+ return;
+ }
+ }
let (view, doc) = current!(editor);
let definition_pos = location.range.start;
// TODO: convert inside server
@@ -491,7 +498,7 @@ fn goto_impl(
locations: Vec<lsp::Location>,
offset_encoding: OffsetEncoding,
) {
- let cwdir = std::env::current_dir().expect("couldn't determine current directory");
+ let cwdir = std::env::current_dir().unwrap_or_default();
match locations.as_slice() {
[location] => {