Skip to content

Commit 5ce10c0

Browse files
bmwillgitster
authored andcommitted
pathspec: fix segfault in clear_pathspec
In 'clear_pathspec()' the incorrect index parameter is used to bound an inner-loop which is used to free a 'struct attr_match' value field. Using the incorrect index parameter (in addition to being incorrect) occasionally causes segmentation faults when attempting to free an invalid pointer. Fix this by using the correct index parameter 'i'. Signed-off-by: Brandon Williams <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent c5af19f commit 5ce10c0

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

pathspec.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,7 @@ void clear_pathspec(struct pathspec *pathspec)
724724
free(pathspec->items[i].match);
725725
free(pathspec->items[i].original);
726726

727-
for (j = 0; j < pathspec->items[j].attr_match_nr; j++)
727+
for (j = 0; j < pathspec->items[i].attr_match_nr; j++)
728728
free(pathspec->items[i].attr_match[j].value);
729729
free(pathspec->items[i].attr_match);
730730

0 commit comments

Comments
 (0)