From ae5d7a0c310c7b0acd7a51e97ee46893f3d5b79e Mon Sep 17 00:00:00 2001 From: Jose Colon Rodriguez Date: Sat, 17 Feb 2024 13:31:45 -0400 Subject: Fixed isAsciiOnly and CodePointIterator ASCII bugs --- src/display_width.zig | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/display_width.zig') diff --git a/src/display_width.zig b/src/display_width.zig index 2ac7093..ba76052 100644 --- a/src/display_width.zig +++ b/src/display_width.zig @@ -22,16 +22,17 @@ fn isAsciiOnly(str: []const u8) bool { } else true; const Vec = @Vector(vec_len, u8); - var i: usize = 0; + var remaining = str; - while (i < str.len) : (i += vec_len) { - if (str[i..].len < vec_len) return for (str[i..]) |b| { + while (true) { + if (remaining.len < vec_len) return for (remaining) |b| { if (b > 127) break false; } else true; - const v1 = str[0..vec_len].*; + const v1 = remaining[0..vec_len].*; const v2: Vec = @splat(127); if (@reduce(.Or, v1 > v2)) return false; + remaining = remaining[vec_len..]; } return true; -- cgit v1.2.3