summaryrefslogtreecommitdiff
path: root/methods/copy.cc
diff options
context:
space:
mode:
Diffstat (limited to 'methods/copy.cc')
-rw-r--r--methods/copy.cc9
1 files changed, 2 insertions, 7 deletions
diff --git a/methods/copy.cc b/methods/copy.cc
index 5e3654389..810fc2f38 100644
--- a/methods/copy.cc
+++ b/methods/copy.cc
@@ -78,13 +78,8 @@ bool CopyMethod::Fetch(FetchItem *Itm)
From.Close();
To.Close();
- // Transfer the modification times
- struct timeval times[2];
- times[0].tv_sec = Buf.st_atime;
- times[1].tv_sec = Buf.st_mtime;
- times[0].tv_usec = times[1].tv_usec = 0;
- if (utimes(Res.Filename.c_str(), times) != 0)
- return _error->Errno("utimes",_("Failed to set modification time"));
+ if (TransferModificationTimes(File.c_str(), Res.Filename.c_str(), Res.LastModified) == false)
+ return false;
CalculateHashes(Itm, Res);
URIDone(Res);