summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Martín Nieto <cmn@elego.de>2011-05-31 16:49:15 +0200
committerCarlos Martín Nieto <cmn@elego.de>2011-05-31 16:49:15 +0200
commit71da57aefddf25395da141eef8dd854c04bc5771 (patch)
tree4dc12c1fa9bc0161190f659bc2f3b914689903f4
parent8146fe7cb9b2c8161ff7d773548237682b1e7a98 (diff)
downloadlibgit2-71da57aefddf25395da141eef8dd854c04bc5771.tar.gz
Plug a leak in the index unmerged entries vector
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
-rw-r--r--src/index.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/index.c b/src/index.c
index 389780295..f90de2a10 100644
--- a/src/index.c
+++ b/src/index.c
@@ -188,6 +188,7 @@ void git_index_free(git_index *index)
git_index_clear(index);
git_vector_free(&index->entries);
+ git_vector_free(&index->unmerged);
free(index->index_file_path);
free(index);
@@ -221,7 +222,15 @@ void git_index_clear(git_index *index)
free(e);
}
+ for (i = 0; i < index->unmerged.length; ++i) {
+ git_index_entry_unmerged *e;
+ e = git_vector_get(&index->unmerged, i);
+ free((char *)e->path);
+ free(e);
+ }
+
git_vector_clear(&index->entries);
+ git_vector_clear(&index->unmerged);
index->last_modified = 0;
free_tree(index->tree);