static int pakfire_transfer_save(struct pakfire_downloader* downloader,
struct pakfire_transfer* transfer) {
- struct utimbuf times;
+ struct utimbuf times = {
+ .actime = 0,
+ .modtime = 0,
+ };
int r;
// Nothing to do if path isn't set
// Filetime
curl_easy_getinfo(transfer->handle, CURLINFO_FILETIME_T, ×.modtime);
- r = utime(transfer->path, ×);
- if (r)
- ERROR(downloader->pakfire, "Could not set mtime of %s: %m\n", transfer->path);
+
+ if (times.modtime) {
+ r = utime(transfer->path, ×);
+ if (r)
+ ERROR(downloader->pakfire, "Could not set mtime of %s: %m\n", transfer->path);
+ }
return 0;
}