From 630d92fb8f68b2d12b7d6ecef127ca96ec31f94d Mon Sep 17 00:00:00 2001 From: Andrea Manzini Date: Sun, 26 Jan 2025 18:54:13 +0100 Subject: [PATCH] Fix issue #238 --- src/lib.rs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index bae2945..2d3bba9 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -733,8 +733,8 @@ impl<'a, Writer: Write> Printer<'a, Writer> { writeln!(self.writer)?; } else if let Some(n) = leftover { // last line is incomplete - self.print_position_panel()?; self.squeezer = Squeezer::Ignore; + self.print_position_panel()?; self.print_bytes()?; self.squeezer = Squeezer::Print; for i in n..8 * self.panels as usize { @@ -939,4 +939,18 @@ mod tests { let actual_string: &str = str::from_utf8(&output).unwrap(); assert_eq!(actual_string, expected_string) } + + // issue#238 + #[test] + fn display_offset_in_last_line() { + let input = io::Cursor::new(b"AAAAAAAAAAAAAAAACCCC"); + let expected_string = "\ +┌────────┬─────────────────────────┬─────────────────────────┬────────┬────────┐ +│00000000│ 41 41 41 41 41 41 41 41 ┊ 41 41 41 41 41 41 41 41 │AAAAAAAA┊AAAAAAAA│ +│00000010│ 43 43 43 43 ┊ │CCCC ┊ │ +└────────┴─────────────────────────┴─────────────────────────┴────────┴────────┘ +" + .to_owned(); + assert_print_all_output(input, expected_string); + } }