From 83ccf092c36c71bc55f50b0119fc7142a404b602 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Fri, 18 Jul 2025 19:53:38 -0500 Subject: [PATCH] Bugfix: Currency symbols are incorrectly being designated as unassigned. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit An improper check in `private_f_utf_character_is_unassigned()` is resulting in valid currency symbols being treated as undefined. Example: ``` # echo "₿" | byte_dump -wt 4 Piped Byte Dump: (in Hexidecimal) 0000000000000000 e2 82 bf 0a | � ␊ | Invalid UTF-8 codes were detected for file '-'. ``` The following is the expected valid results: ``` # echo "₿" | byte_dump -wt 4 Piped Byte Dump: (in Hexidecimal) 0000000000000000 e2 82 bf 0a | ₿ ␊ | ``` --- level_0/f_utf/c/private-utf_unassigned.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/level_0/f_utf/c/private-utf_unassigned.c b/level_0/f_utf/c/private-utf_unassigned.c index 366da23..53843be 100644 --- a/level_0/f_utf/c/private-utf_unassigned.c +++ b/level_0/f_utf/c/private-utf_unassigned.c @@ -909,8 +909,8 @@ extern "C" { return F_true; } - // Currency Symbols: U+20BF to U+20CF. - if (sequence >= 0xe282bf00 && sequence <= 0xe2838f00) { + // Currency Symbols: U+20C1 to U+20CF. + if (sequence >= 0xe2838100 && sequence <= 0xe2838f00) { return F_true; } -- 1.8.3.1