aboutsummaryrefslogtreecommitdiff
path: root/string-list.c
diff options
context:
space:
mode:
authorAmisha Chhajed <amishhhaaaa@gmail.com>2026-01-29 17:42:20 +0530
committerJunio C Hamano <gitster@pobox.com>2026-01-29 09:32:50 -0800
commit2e711acfbdfc0fedf631688d78cde153ba835c93 (patch)
treeb8725125128340b97c086e32e78117284cbbe75d /string-list.c
parent208642cfbb53781602af1fa77c67322c0aab0ad9 (diff)
downloadgit-2e711acfbdfc0fedf631688d78cde153ba835c93.tar.xz
string-list: add string_list_sort_u() that mimics "sort -u"
Many callsites of string_list_remove_duplicates() call it immdediately after calling string_list_sort(), understandably as the former requires string-list to be sorted, it is clear that these places are sorting only to remove duplicates and for no other reason. Introduce a helper function string_list_sort_u that combines these two calls that often appear together, to simplify these callsites. Replace the current calls of those methods with string_list_sort_u(). Signed-off-by: Amisha Chhajed <amishhhaaaa@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'string-list.c')
-rw-r--r--string-list.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/string-list.c b/string-list.c
index 08dc00984c..020ed8fef7 100644
--- a/string-list.c
+++ b/string-list.c
@@ -247,6 +247,12 @@ void string_list_sort(struct string_list *list)
QSORT_S(list->items, list->nr, cmp_items, &sort_ctx);
}
+void string_list_sort_u(struct string_list *list, int free_util)
+{
+ string_list_sort(list);
+ string_list_remove_duplicates(list, free_util);
+}
+
struct string_list_item *unsorted_string_list_lookup(struct string_list *list,
const char *string)
{