From 444ad14e02edc59e61f7d53ae3b9f8ebe90860fd Mon Sep 17 00:00:00 2001 From: Karthik Nayak Date: Mon, 28 Jul 2025 22:20:50 +0200 Subject: [PATCH] ref-filter: use REF_ITERATOR_SEEK_SET_PREFIX instead of '1' In the commit 51511d68f4 (for-each-ref: introduce a '--start-after' option, 2025-07-15), for introducing the '--start-after' flag, the `ref_iterator_seek()` was modified to also accept a flag. This was to allow the function to also set the prefix when 'REF_ITERATOR_SEEK_SET_PREFIX' was set. In `do_filter_refs()` instead of passing the flag, we pass in '1' which is the value of the flag. While this works, this is definitely hard to read and introduces inconsistency. Change it to use the flag. While here, remove the unnecessary 'if (prefix)' clause in the 'else' statement, since the block already checks for 'prefix'. Reported-by: Junio C Hamano Signed-off-by: Karthik Nayak Signed-off-by: Junio C Hamano --- ref-filter.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ref-filter.c b/ref-filter.c index c8a6b7f1af..62ffdcdcad 100644 --- a/ref-filter.c +++ b/ref-filter.c @@ -3254,8 +3254,9 @@ static int do_filter_refs(struct ref_filter *filter, unsigned int type, each_ref if (filter->start_after) ret = start_ref_iterator_after(iter, filter->start_after); - else if (prefix) - ret = ref_iterator_seek(iter, prefix, 1); + else + ret = ref_iterator_seek(iter, prefix, + REF_ITERATOR_SEEK_SET_PREFIX); if (!ret) ret = do_for_each_ref_iterator(iter, fn, cb_data); -- 2.47.3