0.3.1: fix off-by-1 in TrimStringRef

This commit is contained in:
🪞👃🪞 2025-03-18 01:05:52 +02:00
parent a80443262c
commit b1639b49d5
3 changed files with 7 additions and 7 deletions

10
Cargo.lock generated
View file

@ -934,7 +934,7 @@ dependencies = [
[[package]] [[package]]
name = "tengri" name = "tengri"
version = "0.3.0" version = "0.3.1"
dependencies = [ dependencies = [
"tengri_dsl", "tengri_dsl",
"tengri_input", "tengri_input",
@ -944,7 +944,7 @@ dependencies = [
[[package]] [[package]]
name = "tengri_dsl" name = "tengri_dsl"
version = "0.3.0" version = "0.3.1"
dependencies = [ dependencies = [
"itertools 0.14.0", "itertools 0.14.0",
"konst", "konst",
@ -955,7 +955,7 @@ dependencies = [
[[package]] [[package]]
name = "tengri_input" name = "tengri_input"
version = "0.3.0" version = "0.3.1"
dependencies = [ dependencies = [
"tengri_dsl", "tengri_dsl",
"tengri_tui", "tengri_tui",
@ -963,7 +963,7 @@ dependencies = [
[[package]] [[package]]
name = "tengri_output" name = "tengri_output"
version = "0.3.0" version = "0.3.1"
dependencies = [ dependencies = [
"proptest", "proptest",
"proptest-derive", "proptest-derive",
@ -974,7 +974,7 @@ dependencies = [
[[package]] [[package]]
name = "tengri_tui" name = "tengri_tui"
version = "0.3.0" version = "0.3.1"
dependencies = [ dependencies = [
"atomic_float", "atomic_float",
"better-panic", "better-panic",

View file

@ -1,5 +1,5 @@
[workspace.package] [workspace.package]
version = "0.3.0" version = "0.3.1"
[workspace] [workspace]
resolver = "2" resolver = "2"

View file

@ -35,7 +35,6 @@ impl<T: AsRef<str>> Content<TuiOut> for TrimStringRef<'_, T> {
let mut width: u16 = 0; let mut width: u16 = 0;
let mut chars = self.1.as_ref().chars(); let mut chars = self.1.as_ref().chars();
while let Some(c) = chars.next() { while let Some(c) = chars.next() {
width += c.width().unwrap_or(0) as u16;
if width > self.0 || width > area.w() { if width > self.0 || width > area.w() {
break break
} }
@ -45,6 +44,7 @@ impl<T: AsRef<str>> Content<TuiOut> for TrimStringRef<'_, T> {
}) { }) {
cell.set_char(c); cell.set_char(c);
} }
width += c.width().unwrap_or(0) as u16;
} }
} }
} }