OSDN Git Service

* cygwin.din (fdatasync): Export.
authorcorinna <corinna>
Tue, 22 Feb 2005 15:30:04 +0000 (15:30 +0000)
committercorinna <corinna>
Tue, 22 Feb 2005 15:30:04 +0000 (15:30 +0000)
* fhandler.cc (fhandler_base::fsync): Return with EINVAL if no
handle is available.
* syscalls.cc (fdatasync): Create export alias to fsync.
* include/cygwin/version.h: Bump API minor version.

winsup/cygwin/ChangeLog
winsup/cygwin/cygwin.din
winsup/cygwin/fhandler.cc
winsup/cygwin/include/cygwin/version.h
winsup/cygwin/syscalls.cc

index d6adc5a..08d6fa9 100644 (file)
@@ -1,3 +1,11 @@
+2005-02-22  Corinna Vinschen  <corinna@vinschen.de>
+
+       * cygwin.din (fdatasync): Export.
+       * fhandler.cc (fhandler_base::fsync): Return with EINVAL if no
+       handle is available.
+       * syscalls.cc (fdatasync): Create export alias to fsync.
+       * include/cygwin/version.h: Bump API minor version.
+
 2005-02-20  Corinna Vinschen  <corinna@vinschen.de>
 
        * fhandler.h (fhandler_base::fstat_helper): Declare with additional
index 6f0acb7..fe4730e 100644 (file)
@@ -562,6 +562,7 @@ _fsetpos64 = fsetpos64 SIGFE
 _fstat64 = fstat64 SIGFE
 fstatfs SIGFE
 _fstatfs = fstatfs SIGFE
+fdatasync SIGFE
 fsync SIGFE
 _fsync = fsync SIGFE
 ftell SIGFE
index e4089d6..70cd4db 100644 (file)
@@ -1627,6 +1627,11 @@ fhandler_base::utimes (const struct timeval *tvp)
 int
 fhandler_base::fsync ()
 {
+  if (!get_handle () || nohandle ())
+    {
+      set_errno (EINVAL);
+      return -1;
+    }
   if (pc.isdir ()) /* Just succeed. */
     return 0;
   if (FlushFileBuffers (get_handle ()))
index c38fc55..ecb467f 100644 (file)
@@ -246,12 +246,13 @@ details. */
       116: Export atoll.
       117: Export utmpx functions, Return utmp * from pututent.
       118: Export getpriority, setpriority.
+      118: Export fdatasync.
      */
 
      /* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
 
 #define CYGWIN_VERSION_API_MAJOR 0
-#define CYGWIN_VERSION_API_MINOR 118
+#define CYGWIN_VERSION_API_MINOR 119
 
      /* There is also a compatibity version number associated with the
        shared memory regions.  It is incremented when incompatible
index d769608..a80b470 100644 (file)
@@ -918,6 +918,8 @@ fsync (int fd)
   return cfd->fsync ();
 }
 
+EXPORT_ALIAS (fsync, fdatasync)
+
 static void 
 sync_worker (const char *vol)
 {