Hello Cág, Cág writes: > [...] > Leonardo Taccari wrote: > [...] > > At least regarding the noice problem, that's just a kludge but a > > possible patch that workaround the problem is attached in this email > > (it can be used as a LOCALPATCHES for sysutils/noice). > > Most printw() calls in noice seems easy to be changed to addstr() ones > > and with them the single bytes are output as-is (IIUC!). > > I guess I'll contact upstream about that. >
At least the proposed workaround is just a kludge that depends on how addstr() is implemented so it is probably not suitable for upstreaming. > [...] > Can we consider this a curses bug? > [...] IIUC at least according POSIX printw() maybe it was a bug: | The mvprintw(), mvwprintw(), printw() and wprintw() functions | are analogous to printf(). The effect of these functions is as | though sprintf() were used to format the string, and then | waddstr() were used to add that multi-byte string to the current | or specified window at the current or specified cursor position. Anyway, Roy fixed that via: <https://mail-index.NetBSD.org/source-changes/2019/04/01/msg104681.html> (i.e.: cvs rdiff -u -r1.68 -r1.69 src/lib/libcurses/curses_private.h cvs rdiff -u -r1.20 -r1.21 src/lib/libcurses/delwin.c cvs rdiff -u -r1.54 -r1.55 src/lib/libcurses/newwin.c cvs rdiff -u -r1.26 -r1.27 src/lib/libcurses/printw.c ) And no local patch is longer needed for noice.
