mirror of
https://github.com/vim/vim.git
synced 2025-09-28 04:24:06 -04:00
patch 8.2.1088: a very long translation might cause a buffer overflow
Problem: A very long translation might cause a buffer overflow. Solution: Trunctate the message if needed.
This commit is contained in:
10
src/fileio.c
10
src/fileio.c
@@ -52,10 +52,14 @@ filemess(
|
|||||||
if (msg_silent != 0)
|
if (msg_silent != 0)
|
||||||
return;
|
return;
|
||||||
msg_add_fname(buf, name); // put file name in IObuff with quotes
|
msg_add_fname(buf, name); // put file name in IObuff with quotes
|
||||||
|
|
||||||
// If it's extremely long, truncate it.
|
// If it's extremely long, truncate it.
|
||||||
if (STRLEN(IObuff) > IOSIZE - 80)
|
if (STRLEN(IObuff) > IOSIZE - 100)
|
||||||
IObuff[IOSIZE - 80] = NUL;
|
IObuff[IOSIZE - 100] = NUL;
|
||||||
STRCAT(IObuff, s);
|
|
||||||
|
// Avoid an over-long translation to cause trouble.
|
||||||
|
STRNCAT(IObuff, s, 99);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* For the first message may have to start a new line.
|
* For the first message may have to start a new line.
|
||||||
* For further ones overwrite the previous one, reset msg_scroll before
|
* For further ones overwrite the previous one, reset msg_scroll before
|
||||||
|
@@ -754,6 +754,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 */
|
||||||
|
/**/
|
||||||
|
1088,
|
||||||
/**/
|
/**/
|
||||||
1087,
|
1087,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user