]> git.ipfire.org Git - thirdparty/git.git/commitdiff
commit: move clear_commit_marks_many() loop body to clear_commit_marks()
authorRené Scharfe <l.s.r@web.de>
Sun, 23 Mar 2025 09:53:21 +0000 (10:53 +0100)
committerJunio C Hamano <gitster@pobox.com>
Mon, 24 Mar 2025 05:52:29 +0000 (14:52 +0900)
clear_commit_marks_many() clears multiple commits one by one.  Move the
code for handling a single commit to clear_commit_marks() and call it
instead of the other way around, to simplify the code.

Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
commit.c

index 6efdb03997d9a0fd18e082f8500f4a8ca752ec6d..425503bb9f99bc975cc90cc6b3a8185ef75acfab 100644 (file)
--- a/commit.c
+++ b/commit.c
@@ -780,19 +780,17 @@ static void clear_commit_marks_1(struct commit_list **plist,
 
 void clear_commit_marks_many(size_t nr, struct commit **commit, unsigned int mark)
 {
-       for (size_t i = 0; i < nr; i++) {
-               struct commit_list *list = NULL;
-
-               clear_commit_marks_1(&list, *commit, mark);
-               while (list)
-                       clear_commit_marks_1(&list, pop_commit(&list), mark);
-               commit++;
-       }
+       for (size_t i = 0; i < nr; i++)
+               clear_commit_marks(commit[i], mark);
 }
 
 void clear_commit_marks(struct commit *commit, unsigned int mark)
 {
-       clear_commit_marks_many(1, &commit, mark);
+       struct commit_list *list = NULL;
+
+       clear_commit_marks_1(&list, commit, mark);
+       while (list)
+               clear_commit_marks_1(&list, pop_commit(&list), mark);
 }
 
 struct commit *pop_commit(struct commit_list **stack)