]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.1218: missing out-of-memory check in filepath.c v9.1.1218
authorJohn Marriott <basilisk@internode.on.net>
Mon, 17 Mar 2025 20:14:17 +0000 (21:14 +0100)
committerChristian Brabandt <cb@256bit.org>
Mon, 17 Mar 2025 20:14:17 +0000 (21:14 +0100)
Problem:  missing out-of-memory check in filepath.c
Solution: Add check for NULL (John Marriott)

closes: #16906

Signed-off-by: John Marriott <basilisk@internode.on.net>
Signed-off-by: Christian Brabandt <cb@256bit.org>
src/filepath.c
src/version.c

index 080a58e8afe2822e9bba3e464f50dac8ac3fe605..15f770f42c8196c049002b578644e67cf507aa4b 100644 (file)
@@ -105,7 +105,9 @@ shortpath_for_invalid_fname(
     char_u     **bufp,
     size_t     *fnamelen)
 {
-    char_u     *short_fname, *save_fname, *pbuf_unused;
+    char_u     *save_fname;
+    char_u     *pbuf_unused = NULL;
+    char_u     *short_fname = NULL;
     char_u     *endp, *save_endp;
     char_u     ch;
     size_t     old_len;
@@ -116,8 +118,11 @@ shortpath_for_invalid_fname(
     // Make a copy
     old_len = *fnamelen;
     save_fname = vim_strnsave(*fname, old_len);
-    pbuf_unused = NULL;
-    short_fname = NULL;
+    if (save_fname == NULL)
+    {
+       retval = FAIL;
+       goto theend;
+    }
 
     endp = save_fname + old_len - 1; // Find the end of the copy
     save_endp = endp;
@@ -233,6 +238,8 @@ shortpath_for_partial(
        pbuf = tfname = expand_env_save(*fnamep);
     else
        pbuf = tfname = FullName_save(*fnamep, FALSE);
+    if (tfname == NULL)
+       return FAIL;
 
     len = tflen = STRLEN(tfname);
 
index e8d5523b6e3b94cde2c84caf2b5b23cf9d9da6b3..2f28686f9d9bdded20c119a3f628088cecdeb071 100644 (file)
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1218,
 /**/
     1217,
 /**/