From: Andreas Schwab Date: Sat, 6 Oct 2007 08:18:03 +0000 (+0000) Subject: (Fwrite_region): Ignore EINVAL error from fsync. X-Git-Tag: emacs-pretest-22.1.90~674 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=41618deb16f1cc957b73a803fe27c793bd511d47;p=emacs.git (Fwrite_region): Ignore EINVAL error from fsync. --- diff --git a/src/ChangeLog b/src/ChangeLog index 656128832b6..08716763cec 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2007-10-06 Andreas Schwab + + * fileio.c (Fwrite_region): Ignore EINVAL error from fsync. + 2007-10-05 YAMAMOTO Mitsuharu * macterm.c (mac_load_query_font): Fix missing return value. diff --git a/src/fileio.c b/src/fileio.c index 26723fa4f3e..ac5a4f56794 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -5274,8 +5274,10 @@ This does code conversion according to the value of it, and that means the fsync here is not crucial for autosave files. */ if (!auto_saving && !write_region_inhibit_fsync && fsync (desc) < 0) { - /* If fsync fails with EINTR, don't treat that as serious. */ - if (errno != EINTR) + /* If fsync fails with EINTR, don't treat that as serious. Also + ignore EINVAL which happens when fsync is not supported on this + file. */ + if (errno != EINTR && errno != EINVAL) failure = 1, save_errno = errno; } #endif