diff options
author | Jeff King <peff@peff.net> | 2015-05-21 00:45:39 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-05-22 09:33:08 -0700 |
commit | a1ad0eb0cb1c9c83492b17d7a218be084466bf9a (patch) | |
tree | d5998d1d97fea0969bbda130ddd4bfc7d58c9a55 /sha1_name.c | |
parent | e291c75a95d60862cbe12897b5cffb01ba4cedd5 (diff) | |
download | git-a1ad0eb0cb1c9c83492b17d7a218be084466bf9a.tar.gz |
sha1_name: refactor upstream_mark
We will be adding new mark types in the future, so separate
the suffix data from the logic.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sha1_name.c')
-rw-r--r-- | sha1_name.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/sha1_name.c b/sha1_name.c index 461157a5bc..1005f45d75 100644 --- a/sha1_name.c +++ b/sha1_name.c @@ -415,12 +415,12 @@ static int ambiguous_path(const char *path, int len) return slash; } -static inline int upstream_mark(const char *string, int len) +static inline int at_mark(const char *string, int len, + const char **suffix, int nr) { - const char *suffix[] = { "@{upstream}", "@{u}" }; int i; - for (i = 0; i < ARRAY_SIZE(suffix); i++) { + for (i = 0; i < nr; i++) { int suffix_len = strlen(suffix[i]); if (suffix_len <= len && !memcmp(string, suffix[i], suffix_len)) @@ -429,6 +429,12 @@ static inline int upstream_mark(const char *string, int len) return 0; } +static inline int upstream_mark(const char *string, int len) +{ + const char *suffix[] = { "@{upstream}", "@{u}" }; + return at_mark(string, len, suffix, ARRAY_SIZE(suffix)); +} + static int get_sha1_1(const char *name, int len, unsigned char *sha1, unsigned lookup_flags); static int interpret_nth_prior_checkout(const char *name, int namelen, struct strbuf *buf); |