summaryrefslogtreecommitdiff
path: root/shallow.c
diff options
context:
space:
mode:
authorAli Utku Selen <auselen@gmail.com>2019-09-30 23:33:10 (GMT)
committerJunio C Hamano <gitster@pobox.com>2019-10-02 06:03:47 (GMT)
commitddb3c856f32fe291b52544e177d2246c09cadd2c (patch)
treeb8c3949b28c5213de07bf33ba831d3a2a2f8b8f6 /shallow.c
parent98cdfbb84ad2ed6a2eb43dafa357a70a4b0a0fad (diff)
downloadgit-ddb3c856f32fe291b52544e177d2246c09cadd2c.zip
git-ddb3c856f32fe291b52544e177d2246c09cadd2c.tar.gz
git-ddb3c856f32fe291b52544e177d2246c09cadd2c.tar.bz2
shallow.c: don't free unallocated slabs
Fix possible segfault when cloning a submodule shallow. Signed-off-by: Ali Utku Selen <auselen@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'shallow.c')
-rw-r--r--shallow.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/shallow.c b/shallow.c
index c1b6853..8de0bad 100644
--- a/shallow.c
+++ b/shallow.c
@@ -148,6 +148,8 @@ struct commit_list *get_shallow_commits(struct object_array *heads, int depth,
for (i = 0; i < depths.slab_count; i++) {
int j;
+ if (!depths.slab[i])
+ continue;
for (j = 0; j < depths.slab_size; j++)
free(depths.slab[i][j]);
}