Restore utf8proc bits that went missing, GitHub issue 2564.

pull/2573/head
Nicholas Marriott 2021-02-10 17:18:37 +00:00
parent 5b6d4c4fd1
commit 679b2288e8
1 changed files with 8 additions and 0 deletions

8
utf8.c
View File

@ -216,7 +216,11 @@ utf8_width(struct utf8_data *ud, int *width)
{
wchar_t wc;
#ifdef HAVE_UTF8PROC
switch (utf8proc_mbtowc(&wc, ud->data, ud->size)) {
#else
switch (mbtowc(&wc, ud->data, ud->size)) {
#endif
case -1:
log_debug("UTF-8 %.*s, mbtowc() %d", (int)ud->size, ud->data,
errno);
@ -225,7 +229,11 @@ utf8_width(struct utf8_data *ud, int *width)
case 0:
return (UTF8_ERROR);
}
#ifdef HAVE_UTF8PROC
*width = utf8proc_wcwidth(wc);
#else
*width = wcwidth(wc);
#endif
if (*width >= 0 && *width <= 0xff)
return (UTF8_DONE);
log_debug("UTF-8 %.*s, wcwidth() %d", (int)ud->size, ud->data, *width);