# HG changeset patch # User Bram Moolenaar # Date 1411152323 -7200 # Node ID ac6cfdc02695b31b07e9beb60fd704f74f4d4c81 # Parent 30f1a0f7d71c7bd71167a799d7871ec0f54eb7b6 updated for version 7.4.451 Problem: Calling system() with empty input gives an error for writing the temp file. Solution: Do not try writing if the string length is zero. (Olaf Dabrunz) diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -18638,13 +18638,16 @@ get_cmd_output_as_rettv(argvars, rettv, } else { + size_t len; + p = get_tv_string_buf_chk(&argvars[1], buf); if (p == NULL) { fclose(fd); goto errret; /* type error; errmsg already given */ } - if (fwrite(p, STRLEN(p), 1, fd) != 1) + len = STRLEN(p); + if (len > 0 && fwrite(p, len, 1, fd) != 1) err = TRUE; } if (fclose(fd) != 0) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 451, +/**/ 450, /**/ 449,