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
index 780d883..8f62cb2 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -18638,13 +18638,16 @@
 	}
 	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)