Mercurial > vim
changeset 679:e629de7618da
updated for version 7.0203
author | vimboss |
---|---|
date | Tue, 21 Feb 2006 22:04:51 +0000 |
parents | 93a1bf1cb633 |
children | 5b101ff9d4c4 |
files | src/fileio.c src/proto/message.pro |
diffstat | 2 files changed, 5 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/fileio.c +++ b/src/fileio.c @@ -2318,16 +2318,13 @@ failed: p = msg_trunc_attr(IObuff, FALSE, 0); if (read_stdin || read_buffer || restart_edit != 0 || (msg_scrolled != 0 && !need_wait_return)) - { /* Need to repeat the message after redrawing when: * - When reading from stdin (the screen will be cleared next). * - When restart_edit is set (otherwise there will be a delay * before redrawing). * - When the screen was scrolled but there is no wait-return * prompt. */ - set_keep_msg(p); - keep_msg_attr = 0; - } + set_keep_msg(p, 0); msg_scrolled_ign = FALSE; } @@ -2335,6 +2332,7 @@ failed: if (newfile && (error #ifdef FEAT_MBYTE || conv_error != 0 + || (illegal_byte > 0 && bad_char_behavior != BAD_KEEP) #endif )) curbuf->b_p_ro = TRUE; @@ -4377,8 +4375,7 @@ restore_backup: STRCAT(IObuff, shortmess(SHM_WRI) ? _(" [w]") : _(" written")); } - set_keep_msg(msg_trunc_attr(IObuff, FALSE, 0)); - keep_msg_attr = 0; + set_keep_msg(msg_trunc_attr(IObuff, FALSE, 0), 0); } /* When written everything correctly: reset 'modified'. Unless not
--- a/src/proto/message.pro +++ b/src/proto/message.pro @@ -16,7 +16,8 @@ int delete_first_msg __ARGS((void)); void ex_messages __ARGS((exarg_T *eap)); void msg_end_prompt __ARGS((void)); void wait_return __ARGS((int redraw)); -void set_keep_msg __ARGS((char_u *s)); +void set_keep_msg __ARGS((char_u *s, int attr)); +void set_keep_msg_from_hist __ARGS((void)); void msg_start __ARGS((void)); void msg_starthere __ARGS((void)); void msg_putchar __ARGS((int c));