patch 9.1.1437: MS-Windows: internal compile error in uc_list()
Problem: MS-Windows: internal compile error in uc_list() with VS 17.14
(ibear)
Solution: refactor code slightly (Mike Williams)
fixes: #17402
closes: #17464
Signed-off-by: Mike Williams <mrmrdubya@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
8f7256a5ee
commit
0174d8f386
@ -965,5 +965,24 @@ func Test_comclear_while_listing()
|
|||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for listing user commands.
|
||||||
|
func Test_command_list_0()
|
||||||
|
" Check space padding of attribute and name in command list
|
||||||
|
set vbs&
|
||||||
|
command! ShortCommand echo "ShortCommand"
|
||||||
|
command! VeryMuchLongerCommand echo "VeryMuchLongerCommand"
|
||||||
|
|
||||||
|
redi @"> | com | redi END
|
||||||
|
pu
|
||||||
|
|
||||||
|
let bl = matchbufline(bufnr('%'), "^ ShortCommand 0", 1, '$')
|
||||||
|
call assert_false(bl == [])
|
||||||
|
let bl = matchbufline(bufnr('%'), "^ VeryMuchLongerCommand 0", 1, '$')
|
||||||
|
call assert_false(bl == [])
|
||||||
|
|
||||||
|
bwipe!
|
||||||
|
delcommand ShortCommand
|
||||||
|
delcommand VeryMuchLongerCommand
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
|||||||
@ -600,17 +600,21 @@ uc_list(char_u *name, size_t name_len)
|
|||||||
msg_putchar('|');
|
msg_putchar('|');
|
||||||
--len;
|
--len;
|
||||||
}
|
}
|
||||||
while (len-- > 0)
|
if (len != 0)
|
||||||
msg_putchar(' ');
|
msg_puts(&" "[4 - len]);
|
||||||
|
|
||||||
msg_outtrans_attr(cmd->uc_name, HL_ATTR(HLF_D));
|
msg_outtrans_attr(cmd->uc_name, HL_ATTR(HLF_D));
|
||||||
len = (int)cmd->uc_namelen + 4;
|
len = (int)cmd->uc_namelen + 4;
|
||||||
|
|
||||||
do
|
if (len < 21)
|
||||||
{
|
{
|
||||||
msg_putchar(' ');
|
// Field padding spaces 12345678901234567
|
||||||
++len;
|
static char spaces[18] = " ";
|
||||||
} while (len < 22);
|
msg_puts(&spaces[len - 4]);
|
||||||
|
len = 21;
|
||||||
|
}
|
||||||
|
msg_putchar(' ');
|
||||||
|
++len;
|
||||||
|
|
||||||
// "over" is how much longer the name is than the column width for
|
// "over" is how much longer the name is than the column width for
|
||||||
// the name, we'll try to align what comes after.
|
// the name, we'll try to align what comes after.
|
||||||
|
|||||||
@ -709,6 +709,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 */
|
||||||
|
/**/
|
||||||
|
1437,
|
||||||
/**/
|
/**/
|
||||||
1436,
|
1436,
|
||||||
/**/
|
/**/
|
||||||
|
|||||||
Reference in New Issue
Block a user