# HG changeset patch # User Christian Brabandt # Date 1511617504 -3600 # Node ID 8ba2a921cd86b722071de5bab15c20a84e320719 # Parent f4f2426f5a01c104f08838b7e60b293c328c14a5 patch 8.0.1335: writefile() using fsync() may give an error. commit https://github.com/vim/vim/commit/291a9d15ed1eb1094edc8ad6dda00a6da3bd7072 Author: Bram Moolenaar Date: Sat Nov 25 14:37:11 2017 +0100 patch 8.0.1335: writefile() using fsync() may give an error. Problem: Writefile() using fsync() may give an error for a device. (Yasuhiro Matsumoto) Solution: Ignore fsync() failing. (closes #2373) diff --git a/src/evalfunc.c b/src/evalfunc.c --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -13449,8 +13449,10 @@ f_writefile(typval_T *argvars, typval_T if (write_list(fd, list, binary) == FAIL) ret = -1; #ifdef HAVE_FSYNC - else if (do_fsync && fsync(fileno(fd)) != 0) - EMSG(_(e_fsync)); + else if (do_fsync) + /* Ignore the error, the user wouldn't know what to do about it. + * May happen for a device. */ + ignored = fsync(fileno(fd)); #endif fclose(fd); } diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -772,6 +772,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1335, +/**/ 1334, /**/ 1333,