diff options
author | Junio C Hamano <gitster@pobox.com> | 2008-08-18 21:57:16 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-08-18 22:37:55 -0700 |
commit | fdb2a2a600969598fd80f01b009fbbb020d596ab (patch) | |
tree | 935e08662721c94bf3d4aabf2542653ae16bd20a /git-compat-util.h | |
parent | 2ebc02d32a4360da2cf69c2b5f5bfad0716d42b0 (diff) | |
download | git-fdb2a2a600969598fd80f01b009fbbb020d596ab.tar.gz |
compat: introduce on_disk_bytes()
Some platforms do not have st_blocks member in "struct stat"; mingw
already emulates it by rounding it up to closest 512-byte blocks (even
though it could overcount when a file has holes).
The reason to use the member is only to figure out how many kilobytes the
files occupy on-disk, so give a helper function in git-compat-util.h to
compute this value.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Acked-by: Johannes Sixt <johannes.sixt@telecom.at>
Diffstat (limited to 'git-compat-util.h')
-rw-r--r-- | git-compat-util.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/git-compat-util.h b/git-compat-util.h index cf89cdf459..1b40dbd535 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -192,6 +192,12 @@ extern int git_munmap(void *start, size_t length); #endif /* NO_MMAP */ +#ifdef NO_ST_BLOCKS_IN_STRUCT_STAT +#define on_disk_bytes(st) ((st).st_size) +#else +#define on_disk_bytes(st) ((st).st_blocks * 512) +#endif + #define DEFAULT_PACKED_GIT_LIMIT \ ((1024L * 1024L) * (sizeof(void*) >= 8 ? 8192 : 256)) |