in do_yesno(), add a missing assert, and use display_string() to display
the prompt, so that we don't end it in the middle of a multibyte character if it's more than (COLS - 1) bytes long git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2751 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
c3e52f16ba
commit
3f301dd437
|
@ -324,6 +324,9 @@ CVS code -
|
||||||
(DLR)
|
(DLR)
|
||||||
do_yesno()
|
do_yesno()
|
||||||
- Allow refreshing the screen via Ctrl-L, as Pico does. (DLR)
|
- Allow refreshing the screen via Ctrl-L, as Pico does. (DLR)
|
||||||
|
- Add a missing assert, and use display_string() to display the
|
||||||
|
prompt, so that we don't end it in the middle of a multibyte
|
||||||
|
character if it's more than (COLS - 1) bytes long. (DLR)
|
||||||
total_redraw()
|
total_redraw()
|
||||||
- Simplify to call clearok(TRUE) and wrefresh() on edit, which
|
- Simplify to call clearok(TRUE) and wrefresh() on edit, which
|
||||||
updates the entire screen in fewer function calls. (DLR)
|
updates the entire screen in fewer function calls. (DLR)
|
||||||
|
|
|
@ -3606,6 +3606,9 @@ int do_yesno(bool all, const char *msg)
|
||||||
const char *yesstr; /* String of yes characters accepted. */
|
const char *yesstr; /* String of yes characters accepted. */
|
||||||
const char *nostr; /* Same for no. */
|
const char *nostr; /* Same for no. */
|
||||||
const char *allstr; /* And all, surprise! */
|
const char *allstr; /* And all, surprise! */
|
||||||
|
char *expmsg; /* Expanded version of msg. */
|
||||||
|
|
||||||
|
assert(msg != NULL);
|
||||||
|
|
||||||
/* yesstr, nostr, and allstr are strings of any length. Each string
|
/* yesstr, nostr, and allstr are strings of any length. Each string
|
||||||
* consists of all single-byte characters accepted as valid
|
* consists of all single-byte characters accepted as valid
|
||||||
|
@ -3647,7 +3650,10 @@ int do_yesno(bool all, const char *msg)
|
||||||
wattron(bottomwin, A_REVERSE);
|
wattron(bottomwin, A_REVERSE);
|
||||||
|
|
||||||
blank_statusbar();
|
blank_statusbar();
|
||||||
mvwaddnstr(bottomwin, 0, 0, msg, COLS - 1);
|
|
||||||
|
expmsg = display_string(msg, 0, COLS - 1, FALSE);
|
||||||
|
mvwaddstr(bottomwin, 0, 0, msg);
|
||||||
|
free(expmsg);
|
||||||
|
|
||||||
wattroff(bottomwin, A_REVERSE);
|
wattroff(bottomwin, A_REVERSE);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue