X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=sha1_file.c;h=f9f8d5e91c278000e5869f49ba6a79ddfaf13145;hb=e0a4aae865862549c5f2a65016d4d264843e7914;hp=6b1b5125c8f992927b70ce10c43f2332f5948bc0;hpb=c01f51cc750dbd76e50919bf4e3b94e1b47d2e23;p=git.git diff --git a/sha1_file.c b/sha1_file.c index 6b1b5125c..f9f8d5e91 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -1206,6 +1206,11 @@ void *map_sha1_file(const unsigned char *sha1, unsigned long *size) if (!fstat(fd, &st)) { *size = xsize_t(st.st_size); + if (!*size) { + /* mmap() is forbidden on empty files */ + error("object file %s is empty", sha1_file_name(sha1)); + return NULL; + } map = xmmap(NULL, *size, PROT_READ, MAP_PRIVATE, fd, 0); } close(fd);