0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

updated for version 7.3.081

Problem:    Non-printable characters in 'statusline' cause trouble. (ZyX)
Solution:   Use transstr(). (partly by Caio Ariede)
This commit is contained in:
Bram Moolenaar
2010-12-08 19:56:58 +01:00
parent 56f7804065
commit 7c5676b5d6
2 changed files with 14 additions and 3 deletions

View File

@@ -3405,9 +3405,9 @@ win_line(wp, lnum, startrow, endrow, nochange)
# endif # endif
) )
{ {
int_u text_sign; int text_sign;
# ifdef FEAT_SIGN_ICONS # ifdef FEAT_SIGN_ICONS
int_u icon_sign; int icon_sign;
# endif # endif
/* Draw two cells with the sign value or blank. */ /* Draw two cells with the sign value or blank. */
@@ -6522,8 +6522,17 @@ win_redr_custom(wp, draw_ruler)
stl, use_sandbox, stl, use_sandbox,
fillchar, maxwidth, hltab, tabtab); fillchar, maxwidth, hltab, tabtab);
vim_free(stl); vim_free(stl);
len = (int)STRLEN(buf);
/* Make all characters printable. */
p = transstr(buf);
if (p != NULL)
{
vim_strncpy(buf, p, sizeof(buf) - 1);
vim_free(p);
}
/* fill up with "fillchar" */
len = (int)STRLEN(buf);
while (width < maxwidth && len < (int)sizeof(buf) - 1) while (width < maxwidth && len < (int)sizeof(buf) - 1)
{ {
#ifdef FEAT_MBYTE #ifdef FEAT_MBYTE

View File

@@ -714,6 +714,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
81,
/**/ /**/
80, 80,
/**/ /**/