From 9f93d621925966c22ee51fdcb5def8e131596f9b Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 24 Jan 2010 07:44:03 +0100 Subject: libbb: better unicode width support. Hopefully fixes bug 839. Also opens up a possibility to make other unicode stuff smaller and more correct later. but: function old new delta static.combining - 516 +516 bb_wcwidth - 328 +328 unicode_cut_nchars - 141 +141 mbstowc_internal - 93 +93 in_table - 78 +78 cal_main 899 961 +62 static.combining0x10000 - 40 +40 unicode_strlen - 31 +31 bb_mbstrlen 31 - -31 bb_mbstowcs 173 102 -71 ------------------------------------------------------------------------------ (add/remove: 7/1 grow/shrink: 1/1 up/down: 1289/-102) Total: 1187 bytes Uses code of Markus Kuhn, which is in public domain: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c "Permission to use, copy, modify, and distribute this software for any purpose and without fee is hereby granted. The author disclaims all warranties with regard to this software." Signed-off-by: Denys Vlasenko --- networking/udhcp/dumpleases.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'networking/udhcp/dumpleases.c') diff --git a/networking/udhcp/dumpleases.c b/networking/udhcp/dumpleases.c index 97605f089..d8f5da7fb 100644 --- a/networking/udhcp/dumpleases.c +++ b/networking/udhcp/dumpleases.c @@ -72,7 +72,7 @@ int dumpleases_main(int argc UNUSED_PARAM, char **argv) /* lease.hostname is char[20] and is always NUL terminated */ #if ENABLE_FEATURE_ASSUME_UNICODE printf(" %-16s%s%*s", inet_ntoa(addr), lease.hostname, - 20 - (int)bb_mbstrlen(lease.hostname), ""); + 20 - (int)unicode_strlen(lease.hostname), ""); #else printf(" %-16s%-20s", inet_ntoa(addr), lease.hostname); #endif -- cgit v1.2.3