X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fwidechar%2Flib_wunctrl.c;fp=ncurses%2Fwidechar%2Flib_wunctrl.c;h=e87085a6596a8f75a6389135fe9ef163cf0bf1eb;hp=cd7c56ca73f49139642ec9a231e37c75d81c68c1;hb=a1aff38c9421e79f92cd4e8ab0587fdf3806cc28;hpb=3853a8e97d7efa8cb6a3c93c696d2c52895d6a70 diff --git a/ncurses/widechar/lib_wunctrl.c b/ncurses/widechar/lib_wunctrl.c index cd7c56ca..e87085a6 100644 --- a/ncurses/widechar/lib_wunctrl.c +++ b/ncurses/widechar/lib_wunctrl.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 2001-2003,2005 Free Software Foundation, Inc. * + * Copyright (c) 2001-2005,2007 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 * @@ -37,18 +37,20 @@ #if USE_WIDEC_SUPPORT -MODULE_ID("$Id: lib_wunctrl.c,v 1.8 2005/04/16 18:10:44 tom Exp $") +MODULE_ID("$Id: lib_wunctrl.c,v 1.11 2007/06/09 22:44:30 tom Exp $") NCURSES_EXPORT(wchar_t *) wunctrl(cchar_t *wc) { - static wchar_t str[5], *sp; + static wchar_t str[CCHARW_MAX + 1], *sp; if (Charable(*wc)) { const char *p = unctrl((unsigned) _nc_to_char((wint_t) CharOf(*wc))); - for (sp = str; *p;) - *sp++ = _nc_to_widechar(*p++); + for (sp = str; *p; ++p) { + *sp++ = _nc_to_widechar(*p); + } + *sp = 0; return str; } else return wc->chars;