changeset 14623:b8daa070473b v8.1.0325

patch 8.1.0325: strings in swap file may not be NUL terminated commit https://github.com/vim/vim/commit/7c60505e1012a43549c2c075c27463c5399e81ec Author: Bram Moolenaar <Bram@vim.org> Date: Thu Aug 23 23:01:27 2018 +0200 patch 8.1.0325: strings in swap file may not be NUL terminated Problem: Strings in swap file may not be NUL terminated. (Coverity) Solution: Limit the length of the used string.
author Christian Brabandt <cb@256bit.org>
date Thu, 23 Aug 2018 23:15:04 +0200
parents d6eed9f439d7
children 8d62c2813fac
files src/memline.c src/version.c
diffstat 2 files changed, 9 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/memline.c
+++ b/src/memline.c
@@ -2065,10 +2065,13 @@ get_b0_dict(char_u *fname, dict_T *d)
 	    else
 	    {
 		/* we have swap information */
-		dict_add_string(d, "version", vim_strsave(b0.b0_version));
-		dict_add_string(d, "user", vim_strsave(b0.b0_uname));
-		dict_add_string(d, "host", vim_strsave(b0.b0_hname));
-		dict_add_string(d, "fname", vim_strsave(b0.b0_fname));
+		dict_add_string(d, "version", vim_strnsave(b0.b0_version, 10));
+		dict_add_string(d, "user",
+				     vim_strnsave(b0.b0_uname, B0_UNAME_SIZE));
+		dict_add_string(d, "host",
+				     vim_strnsave(b0.b0_hname, B0_HNAME_SIZE));
+		dict_add_string(d, "fname",
+				 vim_strnsave(b0.b0_fname, B0_FNAME_SIZE_ORG));
 
 		dict_add_number(d, "pid", char_to_long(b0.b0_pid));
 		dict_add_number(d, "mtime", char_to_long(b0.b0_mtime));
--- a/src/version.c
+++ b/src/version.c
@@ -795,6 +795,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    325,
+/**/
     324,
 /**/
     323,