Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'helix-term/src/ui/markdown.rs')
-rw-r--r--helix-term/src/ui/markdown.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/helix-term/src/ui/markdown.rs b/helix-term/src/ui/markdown.rs
index ae58d75e..6bef59d1 100644
--- a/helix-term/src/ui/markdown.rs
+++ b/helix-term/src/ui/markdown.rs
@@ -90,7 +90,13 @@ pub fn highlighted_code_block<'a>(
if pos == start {
continue;
}
- assert!(pos > start);
+ // The highlighter should always move forward.
+ // If the highlighter malfunctions, bail on syntax highlighting and log an error.
+ debug_assert!(pos > start);
+ if pos < start {
+ log::error!("Failed to highlight '{language}': {text:?}");
+ return styled_multiline_text(text, code_style);
+ }
let style = syntax_highlight_stack
.iter()