core: Set mtime of content objects to 0

This is necessary to satisfy tools such as guile and python, which
compare mtimes to determine whether or not source files need to be
compiled.

https://bugzilla.gnome.org/show_bug.cgi?id=720363
This commit is contained in:
Roddy Shuler authored and Colin Walters committed 2013-12-15 11:32:34 -05:00
1 parent 38a286f157
commit fe5ed36461
2 files changed
+25

No files matched your search

+18
View File
@@ -100,6 +100,7 @@ commit_loose_object_trusted (OstreeRepo *self,
{
int fd;
int res;
struct timespec times[2];
g_assert (temp_out != NULL);
@@ -134,6 +135,23 @@ commit_loose_object_trusted (OstreeRepo *self,
if (!gs_fd_set_all_xattrs (fd, xattrs, cancellable, error))
goto out;
}
/* To satisfy tools such as guile which compare mtimes
* to determine whether or not source files need to be compiled,
* set the modification time to 0.
*/
times[0].tv_sec = 0; /* atime */
times[0].tv_nsec = UTIME_OMIT;
times[1].tv_sec = 0; /* mtime */
times[1].tv_nsec = 0;
do
res = futimens (fd, times);
while (G_UNLIKELY (res == -1 && errno == EINTR));
if (G_UNLIKELY (res == -1))
{
ot_util_set_error_from_errno (error, errno);
goto out;
}
}
/* Ensure that in case of a power cut, these files have the data we