X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fwidechar%2Flib_wacs.c;h=da5b93e5495aafdc6f460448d0149a9066cde092;hp=33e001fa93e700eed6b42399243fe7b8358e5880;hb=61d8ae54ff6acd69e9dab2afb21591d44c46ee1f;hpb=eee1237c858e39ddc0970dfc5a44d0ec76e2d9e4 diff --git a/ncurses/widechar/lib_wacs.c b/ncurses/widechar/lib_wacs.c index 33e001fa..da5b93e5 100644 --- a/ncurses/widechar/lib_wacs.c +++ b/ncurses/widechar/lib_wacs.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 2002-2012,2013 Free Software Foundation, Inc. * + * Copyright (c) 2002-2016,2018 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -32,7 +32,7 @@ #include -MODULE_ID("$Id: lib_wacs.c,v 1.13 2013/02/02 17:10:48 tom Exp $") +MODULE_ID("$Id: lib_wacs.c,v 1.19 2018/05/05 17:26:44 tom Exp $") NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0; @@ -106,7 +106,6 @@ _nc_init_wacs(void) }; /* *INDENT-ON* */ - unsigned n, m; int active = _nc_unicode_locale(); /* @@ -120,9 +119,15 @@ _nc_init_wacs(void) active ? "" : " not")); if ((_nc_wacs = typeCalloc(cchar_t, ACS_LEN)) != 0) { + unsigned n; for (n = 0; n < SIZEOF(table); ++n) { - int wide = wcwidth(table[n].value[active]); + unsigned m; +#if NCURSES_WCWIDTH_GRAPHICS + int wide = wcwidth((wchar_t) table[n].value[active]); +#else + int wide = 1; +#endif m = table[n].map; if (active && (wide == 1)) { @@ -133,9 +138,9 @@ _nc_init_wacs(void) SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL); } - T(("#%d, SetChar(%c, %#04x) = %s", - n, m, - table[n].value[active], + T(("#%d, width:%d SetChar(%c, %s) = %s", + n, wide, m, + _tracechar(table[n].value[active]), _tracecchar_t(&_nc_wacs[m]))); } }