aboutsummaryrefslogtreecommitdiffstats
path: root/csum-file.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-04-06 13:01:54 -0700
committerJunio C Hamano <gitster@pobox.com>2022-04-06 13:01:54 -0700
commitfca85986bb936346d362c4802ebce5692fd257ee (patch)
treef7223aef7eb92a5ae483fe86b790c207f1f24043 /csum-file.c
parentb896f729e240d250cf56899e6a0073f6aa469f5d (diff)
parent2e37594797155e5d6134db3ce1e23bf42045934b (diff)
downloadgit-fca85986bb936346d362c4802ebce5692fd257ee.tar.gz
Merge branch 'ns/core-fsyncmethod' into ns/batch-fsync
* ns/core-fsyncmethod: configure.ac: fix HAVE_SYNC_FILE_RANGE definition core.fsyncmethod: correctly camel-case warning message core.fsync: fix incorrect expression for default configuration core.fsync: documentation and user-friendly aggregate options core.fsync: new option to harden the index core.fsync: add configuration parsing core.fsync: introduce granular fsync control infrastructure core.fsyncmethod: add writeout-only mode wrapper: make inclusion of Windows csprng header tightly scoped
Diffstat (limited to 'csum-file.c')
-rw-r--r--csum-file.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/csum-file.c b/csum-file.c
index 26e8a6df44..59ef3398ca 100644
--- a/csum-file.c
+++ b/csum-file.c
@@ -58,7 +58,8 @@ static void free_hashfile(struct hashfile *f)
free(f);
}
-int finalize_hashfile(struct hashfile *f, unsigned char *result, unsigned int flags)
+int finalize_hashfile(struct hashfile *f, unsigned char *result,
+ enum fsync_component component, unsigned int flags)
{
int fd;
@@ -69,7 +70,7 @@ int finalize_hashfile(struct hashfile *f, unsigned char *result, unsigned int fl
if (flags & CSUM_HASH_IN_STREAM)
flush(f, f->buffer, the_hash_algo->rawsz);
if (flags & CSUM_FSYNC)
- fsync_or_die(f->fd, f->name);
+ fsync_component_or_die(component, f->fd, f->name);
if (flags & CSUM_CLOSE) {
if (close(f->fd))
die_errno("%s: sha1 file error on close", f->name);