Skip to content

Commit 817b6b8

Browse files
committed
Fix panic when computing label for class completions
1 parent 13de31f commit 817b6b8

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/java.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -448,9 +448,14 @@ impl Extension for Java {
448448
};
449449
let braces = " {}";
450450
let code = format!("{keyword}{}{braces}", completion.label);
451-
let namespace = completion
452-
.detail
453-
.map(|detail| detail[..detail.len() - completion.label.len() - 1].to_string());
451+
let namespace = completion.detail.and_then(|detail| {
452+
if detail.len() > completion.label.len() {
453+
let prefix_len = detail.len() - completion.label.len() - 1;
454+
Some(detail[..prefix_len].to_string())
455+
} else {
456+
None
457+
}
458+
});
454459
let mut spans = vec![CodeLabelSpan::code_range(
455460
keyword.len()..code.len() - braces.len(),
456461
)];

0 commit comments

Comments
 (0)