Merge branch 'pc/dir-count-slashes'
Three instances of the same helper function have been consolidated to one. * pc/dir-count-slashes: dir: create function count_slashes()
This commit is contained in:
@ -5,6 +5,7 @@
|
||||
#include "color.h"
|
||||
#include "argv-array.h"
|
||||
#include "parse-options.h"
|
||||
#include "dir.h"
|
||||
|
||||
static const char* show_branch_usage[] = {
|
||||
N_("git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
|
||||
@ -421,14 +422,6 @@ static int append_tag_ref(const char *refname, const struct object_id *oid,
|
||||
|
||||
static const char *match_ref_pattern = NULL;
|
||||
static int match_ref_slash = 0;
|
||||
static int count_slash(const char *s)
|
||||
{
|
||||
int cnt = 0;
|
||||
while (*s)
|
||||
if (*s++ == '/')
|
||||
cnt++;
|
||||
return cnt;
|
||||
}
|
||||
|
||||
static int append_matching_ref(const char *refname, const struct object_id *oid,
|
||||
int flag, void *cb_data)
|
||||
@ -438,7 +431,7 @@ static int append_matching_ref(const char *refname, const struct object_id *oid,
|
||||
* refs/tags/v0.99.9a and friends.
|
||||
*/
|
||||
const char *tail;
|
||||
int slash = count_slash(refname);
|
||||
int slash = count_slashes(refname);
|
||||
for (tail = refname; *tail && match_ref_slash < slash; )
|
||||
if (*tail++ == '/')
|
||||
slash--;
|
||||
@ -529,7 +522,7 @@ static void append_one_rev(const char *av)
|
||||
int saved_matches = ref_name_cnt;
|
||||
|
||||
match_ref_pattern = av;
|
||||
match_ref_slash = count_slash(av);
|
||||
match_ref_slash = count_slashes(av);
|
||||
for_each_ref(append_matching_ref, NULL);
|
||||
if (saved_matches == ref_name_cnt &&
|
||||
ref_name_cnt < MAX_REVS)
|
||||
|
Reference in New Issue
Block a user