patch 8.2.3875: gcc complains about buffer overrun

Problem:    gcc complains about buffer overrun.
Solution:   Use mch_memmove() instead of STRCPY(). (John Marriott)
This commit is contained in:
Bram Moolenaar
2021-12-22 20:29:09 +00:00
parent a80aad7174
commit b4168fd917
2 changed files with 5 additions and 2 deletions

View File

@ -222,11 +222,12 @@ dict_free_items(int copyID)
dictitem_alloc(char_u *key)
{
dictitem_T *di;
size_t len = STRLEN(key);
di = alloc(offsetof(dictitem_T, di_key) + STRLEN(key) + 1);
di = alloc(offsetof(dictitem_T, di_key) + len + 1);
if (di != NULL)
{
STRCPY(di->di_key, key);
mch_memmove(di->di_key, key, len + 1);
di->di_flags = DI_FLAGS_ALLOC;
di->di_tv.v_lock = 0;
di->di_tv.v_type = VAR_UNKNOWN;

View File

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