From: mhagger@alum.mit.edu Date: Tue, 10 Apr 2012 05:30:22 GMT Subject: [PATCH 10/15] check_refname_component(): return 0 for zero-length components Message-ID: <1334035827-20331-11-git-send-email-mhagger@alum.mit.edu> In-Reply-To: <1334035827-20331-1-git-send-email-mhagger@alum.mit.edu> From: Michael Haggerty Return 0 (instead of -1) for zero-length components. Move the interpretation of zero-length components as illegal to check_refname_format(). This will make it easier to extend check_refname_format() to also check whether directory names are valid. Signed-off-by: Michael Haggerty --- refs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/refs.c b/refs.c index 8659c3e..1f6890b 100644 --- a/refs.c +++ b/refs.c @@ -51,7 +51,7 @@ static int check_refname_component(const char *refname, int flags) last = ch; } if (cp == refname) - return -1; /* Component has zero length. */ + return 0; /* Component has zero length. */ if (refname[0] == '.') { if (!(flags & REFNAME_DOT_COMPONENT)) return -1; /* Component starts with '.'. */ @@ -74,7 +74,7 @@ int check_refname_format(const char *refname, int flags) while (1) { /* We are at the start of a path component. */ component_len = check_refname_component(refname, flags); - if (component_len < 0) { + if (component_len <= 0) { if ((flags & REFNAME_REFSPEC_PATTERN) && refname[0] == '*' && (refname[1] == '\0' || refname[1] == '/')) { -- 1.7.10