aboutsummaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
Diffstat (limited to 'libbb')
-rw-r--r--libbb/copy_file.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libbb/copy_file.c b/libbb/copy_file.c
index adcfe2111..893b52ed5 100644
--- a/libbb/copy_file.c
+++ b/libbb/copy_file.c
@@ -374,12 +374,12 @@ int FAST_FUNC copy_file(const char *source, const char *dest, int flags)
374 /* Cannot happen: */ 374 /* Cannot happen: */
375 /* && !(flags & (FILEUTILS_MAKE_SOFTLINK|FILEUTILS_MAKE_HARDLINK)) */ 375 /* && !(flags & (FILEUTILS_MAKE_SOFTLINK|FILEUTILS_MAKE_HARDLINK)) */
376 ) { 376 ) {
377 struct timeval times; 377 struct timeval times[2];
378 378
379 times.tv_sec = source_stat.st_mtime; 379 times[1].tv_sec = times[0].tv_sec = source_stat.st_mtime;
380 times.tv_usec = 0; 380 times[1].tv_usec = times[0].tv_usec = 0;
381 /* BTW, utimes sets usec-precision time - just FYI */ 381 /* BTW, utimes sets usec-precision time - just FYI */
382 if (utimes(dest, &times) < 0) 382 if (utimes(dest, times) < 0)
383 bb_perror_msg("can't preserve %s of '%s'", "times", dest); 383 bb_perror_msg("can't preserve %s of '%s'", "times", dest);
384 if (chown(dest, source_stat.st_uid, source_stat.st_gid) < 0) { 384 if (chown(dest, source_stat.st_uid, source_stat.st_gid) < 0) {
385 source_stat.st_mode &= ~(S_ISUID | S_ISGID); 385 source_stat.st_mode &= ~(S_ISUID | S_ISGID);