diff options
| author | Junio C Hamano <gitster@pobox.com> | 2009-03-17 18:55:06 -0700 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2009-03-17 18:55:06 -0700 |
| commit | ca8a36e6e0cf6ee952df16160bc853630c56b997 (patch) | |
| tree | a7a0cc36a4aac48173264e8d84dbe4ba1dcd7fad /string-list.c | |
| parent | a57ca9dd400c8459a3cd3d769bab317f57d1e9ac (diff) | |
| parent | 8321c56b6bae25a2d70790f452df894be536b32c (diff) | |
| download | git-ca8a36e6e0cf6ee952df16160bc853630c56b997.tar.gz | |
Merge branch 'js/remote-improvements'
* js/remote-improvements: (23 commits)
builtin-remote.c: no "commented out" code, please
builtin-remote: new show output style for push refspecs
builtin-remote: new show output style
remote: make guess_remote_head() use exact HEAD lookup if it is available
builtin-remote: add set-head subcommand
builtin-remote: teach show to display remote HEAD
builtin-remote: fix two inconsistencies in the output of "show <remote>"
builtin-remote: make get_remote_ref_states() always populate states.tracked
builtin-remote: rename variables and eliminate redundant function call
builtin-remote: remove unused code in get_ref_states
builtin-remote: refactor duplicated cleanup code
string-list: new for_each_string_list() function
remote: make match_refs() not short-circuit
remote: make match_refs() copy src ref before assigning to peer_ref
remote: let guess_remote_head() optionally return all matches
remote: make copy_ref() perform a deep copy
remote: simplify guess_remote_head()
move locate_head() to remote.c
move duplicated ref_newer() to remote.c
move duplicated get_local_heads() to remote.c
...
Conflicts:
builtin-clone.c
Diffstat (limited to 'string-list.c')
| -rw-r--r-- | string-list.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/string-list.c b/string-list.c index 15e14cf47a..1ac536e638 100644 --- a/string-list.c +++ b/string-list.c @@ -92,6 +92,16 @@ struct string_list_item *string_list_lookup(const char *string, struct string_li return list->items + i; } +int for_each_string_list(string_list_each_func_t fn, + struct string_list *list, void *cb_data) +{ + int i, ret = 0; + for (i = 0; i < list->nr; i++) + if ((ret = fn(&list->items[i], cb_data))) + break; + return ret; +} + void string_list_clear(struct string_list *list, int free_util) { if (list->items) { |
