summaryrefslogtreecommitdiff
path: root/midx.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2020-05-01 20:39:55 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-05-01 20:39:55 (GMT)
commit29d74275c44c1636acabdb5a3822c3872ebf43de (patch)
tree357838ee387521af342297f7f17459449b1a6c27 /midx.c
parent6d56d4c7dcd667d28aec28498591723c6febea1c (diff)
parent6c7ff7cf7f431e4accf360c018149d1e263eaf06 (diff)
downloadgit-29d74275c44c1636acabdb5a3822c3872ebf43de.zip
git-29d74275c44c1636acabdb5a3822c3872ebf43de.tar.gz
git-29d74275c44c1636acabdb5a3822c3872ebf43de.tar.bz2
Merge branch 'ds/multi-pack-index'
The multi-pack-index left mmapped file descriptors open when it does not have to. * ds/multi-pack-index: multi-pack-index: close file descriptor after mmap
Diffstat (limited to 'midx.c')
-rw-r--r--midx.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/midx.c b/midx.c
index a520e26..9a61d3b 100644
--- a/midx.c
+++ b/midx.c
@@ -72,9 +72,9 @@ struct multi_pack_index *load_multi_pack_index(const char *object_dir, int local
FREE_AND_NULL(midx_name);
midx_map = xmmap(NULL, midx_size, PROT_READ, MAP_PRIVATE, fd, 0);
+ close(fd);
FLEX_ALLOC_STR(m, object_dir, object_dir);
- m->fd = fd;
m->data = midx_map;
m->data_len = midx_size;
m->local = local;
@@ -190,8 +190,6 @@ void close_midx(struct multi_pack_index *m)
return;
munmap((unsigned char *)m->data, m->data_len);
- close(m->fd);
- m->fd = -1;
for (i = 0; i < m->num_packs; i++) {
if (m->packs[i])