bug: fix draw bug where the pipe chars could draw over the end (#2146)

Technically the end could draw over since I did `start..pipe_end`, where `pipe_end` could be equal to `end`. This just caps it at `end - 1`.
This commit is contained in:
Clement Tsang
2026-07-13 00:04:31 -04:00
committed by GitHub
parent c696597e81
commit 9c79622422
2 changed files with 6 additions and 3 deletions
+4 -2
View File
@@ -196,8 +196,10 @@ impl Widget for PipeGauge<'_> {
gauge_area.width,
);
let pipe_end =
start + (f64::from(end.saturating_sub(start)) * self.ratio).floor() as u16;
let pipe_end = end.saturating_sub(1).min(
start + (f64::from(end.saturating_sub(start)) * self.ratio).floor() as u16,
);
for col in start..pipe_end {
if let Some(cell) = buf.cell_mut((col, row)) {
cell.set_symbol("|").set_style(Style {