Skip to content

Commit 0fb5839

Browse files
authored
Merge pull request libgit2#5801 from mamapanda/patch-1
index: Check git_vector_dup error in write_entries
2 parents 6e57010 + 4093050 commit 0fb5839

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/index.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2861,14 +2861,16 @@ static int write_entries(git_index *index, git_filebuf *file)
28612861
{
28622862
int error = 0;
28632863
size_t i;
2864-
git_vector case_sorted, *entries;
2864+
git_vector case_sorted = GIT_VECTOR_INIT, *entries = NULL;
28652865
git_index_entry *entry;
28662866
const char *last = NULL;
28672867

28682868
/* If index->entries is sorted case-insensitively, then we need
28692869
* to re-sort it case-sensitively before writing */
28702870
if (index->ignore_case) {
2871-
git_vector_dup(&case_sorted, &index->entries, git_index_entry_cmp);
2871+
if ((error = git_vector_dup(&case_sorted, &index->entries, git_index_entry_cmp)) < 0)
2872+
goto done;
2873+
28722874
git_vector_sort(&case_sorted);
28732875
entries = &case_sorted;
28742876
} else {
@@ -2885,9 +2887,8 @@ static int write_entries(git_index *index, git_filebuf *file)
28852887
last = entry->path;
28862888
}
28872889

2888-
if (index->ignore_case)
2889-
git_vector_free(&case_sorted);
2890-
2890+
done:
2891+
git_vector_free(&case_sorted);
28912892
return error;
28922893
}
28932894

0 commit comments

Comments
 (0)