Convert the users of for_each_string_list to for_each_string_list_item macro
The rule for selecting the candidates for conversion is: if the callback function returns only 0 (the condition for for_each_string_list to exit early), than it can be safely converted to the macro. A notable exception are the callers in builtin/remote.c. If converted, the readability in the file will suffer greately. Besides, the code is not very performance critical (at the moment, at least): it does output formatting of the list of remotes. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
8d31635ce2
commit
8a57c6e943
@ -164,33 +164,32 @@ static void show_ce_entry(const char *tag, struct cache_entry *ce)
|
||||
write_name(ce->name, ce_namelen(ce));
|
||||
}
|
||||
|
||||
static int show_one_ru(struct string_list_item *item, void *cbdata)
|
||||
{
|
||||
const char *path = item->string;
|
||||
struct resolve_undo_info *ui = item->util;
|
||||
int i, len;
|
||||
|
||||
len = strlen(path);
|
||||
if (len < max_prefix_len)
|
||||
return 0; /* outside of the prefix */
|
||||
if (!match_pathspec(pathspec, path, len, max_prefix_len, ps_matched))
|
||||
return 0; /* uninterested */
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (!ui->mode[i])
|
||||
continue;
|
||||
printf("%s%06o %s %d\t", tag_resolve_undo, ui->mode[i],
|
||||
find_unique_abbrev(ui->sha1[i], abbrev),
|
||||
i + 1);
|
||||
write_name(path, len);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void show_ru_info(void)
|
||||
{
|
||||
struct string_list_item *item;
|
||||
|
||||
if (!the_index.resolve_undo)
|
||||
return;
|
||||
for_each_string_list(the_index.resolve_undo, show_one_ru, NULL);
|
||||
|
||||
for_each_string_list_item(item, the_index.resolve_undo) {
|
||||
const char *path = item->string;
|
||||
struct resolve_undo_info *ui = item->util;
|
||||
int i, len;
|
||||
|
||||
len = strlen(path);
|
||||
if (len < max_prefix_len)
|
||||
continue; /* outside of the prefix */
|
||||
if (!match_pathspec(pathspec, path, len, max_prefix_len, ps_matched))
|
||||
continue; /* uninterested */
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (!ui->mode[i])
|
||||
continue;
|
||||
printf("%s%06o %s %d\t", tag_resolve_undo, ui->mode[i],
|
||||
find_unique_abbrev(ui->sha1[i], abbrev),
|
||||
i + 1);
|
||||
write_name(path, len);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void show_files(struct dir_struct *dir)
|
||||
|
Reference in New Issue
Block a user