summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-05-18 13:05:18 +0200
committerBram Moolenaar <Bram@vim.org>2019-05-18 13:05:18 +0200
commit0d3cb73012332964e7a81d7afd1c21d393f45566 (patch)
treef88c8cf7b3b4007b8ba2a064b7b143e8785c39f2
parent8055d17388736421d875dd4933c4c93d49a2ab58 (diff)
patch 8.1.1344: Coverity complains about possibly using a NULL pointerv8.1.1344
Problem: Coverity complains about possibly using a NULL pointer and copying a string into a fixed size buffer. Solution: Check for NULL, even though it should not happen. Use vim_strncpy() instead of strcpy().
-rw-r--r--src/change.c12
-rw-r--r--src/memline.c7
-rw-r--r--src/version.c2
3 files changed, 14 insertions, 7 deletions
diff --git a/src/change.c b/src/change.c
index f1c3cc4d02..33db0c1b80 100644
--- a/src/change.c
+++ b/src/change.c
@@ -193,12 +193,16 @@ check_recorded_changes(
// can be merged.
di = dict_find(li->li_tv.vval.v_dict,
(char_u *)"end", -1);
- nr = tv_get_number(&di->di_tv);
- if (lnume > nr)
- di->di_tv.vval.v_number = lnume;
+ if (di != NULL)
+ {
+ nr = tv_get_number(&di->di_tv);
+ if (lnume > nr)
+ di->di_tv.vval.v_number = lnume;
+ }
di = dict_find(li->li_tv.vval.v_dict,
(char_u *)"added", -1);
- di->di_tv.vval.v_number += xtra;
+ if (di != NULL)
+ di->di_tv.vval.v_number += xtra;
return TRUE;
}
}
diff --git a/src/memline.c b/src/memline.c
index 006a8b52df..8772c4a8e4 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -1874,7 +1874,7 @@ recover_names(
}
}
- /* check for out-of-memory */
+ // check for out-of-memory
for (i = 0; i < num_names; ++i)
{
if (names[i] == NULL)
@@ -2101,7 +2101,7 @@ get_ctime(time_t thetime, int add_newline)
# endif
/* MSVC returns NULL for an invalid value of seconds. */
if (curtime == NULL)
- STRCPY(buf, _("(Invalid)"));
+ vim_strncpy((char_u *)buf, (char_u *)_("(Invalid)"), sizeof(buf) - 1);
else
(void)strftime(buf, sizeof(buf) - 1, "%a %b %d %H:%M:%S %Y", curtime);
#else
@@ -3374,7 +3374,8 @@ ml_replace_len(
if (newline != NULL)
{
mch_memmove(newline, line, len);
- mch_memmove(newline + len, curbuf->b_ml.ml_line_ptr + oldtextlen, textproplen);
+ mch_memmove(newline + len, curbuf->b_ml.ml_line_ptr
+ + oldtextlen, textproplen);
vim_free(line);
line = newline;
len += (colnr_T)textproplen;
diff --git a/src/version.c b/src/version.c
index f32cd286f7..c31a98b449 100644
--- a/src/version.c
+++ b/src/version.c
@@ -768,6 +768,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1344,
+/**/
1343,
/**/
1342,