]> git.eshelyaron.com Git - emacs.git/commitdiff
(set_file_times): New function.
authorKarl Heuer <kwzh@gnu.org>
Sun, 18 Sep 1994 19:13:39 +0000 (19:13 +0000)
committerKarl Heuer <kwzh@gnu.org>
Sun, 18 Sep 1994 19:13:39 +0000 (19:13 +0000)
src/sysdep.c

index e670958289ff40b602f6e3d003d87ddc20d78f81..85076908f16662473c15b4f9af9a4d295c1ffb1d 100644 (file)
@@ -3023,36 +3023,34 @@ rename (from, to)
 
 #endif
 
-#ifdef MISSING_UTIMES
-
-/* HPUX (among others) sets HAVE_TIMEVAL but does not implement utimes.  */
-
-utimes ()
+int
+set_file_times (path, atime, mtime)
+     char *path;
+     EMACS_TIME atime, mtime;
 {
-}
+#ifdef HAVE_UTIMES
+  struct timeval tv[2];
+  tv[0] = atime;
+  tv[1] = mtime;
+  return utimes (path, tv);
+#else
+#ifdef HAVE_UTIME
+#ifndef HAVE_STRUCT_UTIMBUF
+  struct utimbuf {
+    long actime;
+    long modtime;
+  };
 #endif
-
-#ifdef IRIS_UTIME
-
-/* The IRIS (3.5) has timevals, but uses sys V utime, and doesn't have the
-   utimbuf structure defined anywhere but in the man page. */
-
-struct utimbuf
- {
-   long actime;
-   long modtime;
- };
-
-utimes (name, tvp)
-     char *name;
-     struct timeval tvp[];
-{
   struct utimbuf utb;
-  utb.actime  = tvp[0].tv_sec;
-  utb.modtime = tvp[1].tv_sec;
-  utime (name, &utb);
+  utb.actime = EMACS_SECS (atime);
+  utb.modtime = EMACS_SECS (mtime);
+  return utime (path, &utb);
+#else /* !HAVE_UTIMES && !HAVE_UTIME */
+  /* Should we set errno here?  If so, set it to what?  */
+  return -1;
+#endif
+#endif
 }
-#endif /* IRIS_UTIME */
 
 
 #ifdef HPUX