diff --git a/helix-view/src/gutter.rs b/helix-view/src/gutter.rs
index 8c8abcc3..475ec5a3 100644
--- a/helix-view/src/gutter.rs
+++ b/helix-view/src/gutter.rs
@@ -83,16 +83,15 @@ pub fn diagnostic<'doc>(
 
                 let diagnostics_on_line = after.chain(before);
 
-                // This unwrap is safe because the iterator cannot be empty as it contains at least the item found by the binary search.
-                let diagnostic = diagnostics_on_line.max_by_key(|d| d.severity).unwrap();
-
-                write!(out, "●").unwrap();
-                return Some(match diagnostic.severity {
-                    Some(Severity::Error) => error,
-                    Some(Severity::Warning) | None => warning,
-                    Some(Severity::Info) => info,
-                    Some(Severity::Hint) => hint,
-                });
+                if let Some(diagnostic) = diagnostics_on_line.max_by_key(|d| d.severity) {
+                    write!(out, "●").ok();
+                    return Some(match diagnostic.severity {
+                        Some(Severity::Error) => error,
+                        Some(Severity::Warning) | None => warning,
+                        Some(Severity::Info) => info,
+                        Some(Severity::Hint) => hint,
+                    });
+                }
             }
             None
         },