]> granicus.if.org Git - git/commitdiff
refs: define constant PEELED_LINE_LENGTH
authorMichael Haggerty <mhagger@alum.mit.edu>
Mon, 22 Apr 2013 19:52:13 +0000 (21:52 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 1 May 2013 22:33:09 +0000 (15:33 -0700)
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
refs.c

diff --git a/refs.c b/refs.c
index ccbd04a0351d5810b2cc5b6b726e2f54cacdd3e8..390251476c3108b217c62563fc66b926710bc1c2 100644 (file)
--- a/refs.c
+++ b/refs.c
@@ -806,6 +806,9 @@ void invalidate_ref_cache(const char *submodule)
        clear_loose_ref_cache(refs);
 }
 
+/* The length of a peeled reference line in packed-refs, including EOL: */
+#define PEELED_LINE_LENGTH 42
+
 /*
  * Parse one line from a packed-refs file.  Write the SHA1 to sha1.
  * Return a pointer to the refname within the line (null-terminated),
@@ -898,8 +901,8 @@ static void read_packed_refs(FILE *f, struct ref_dir *dir)
                }
                if (last &&
                    refline[0] == '^' &&
-                   strlen(refline) == 42 &&
-                   refline[41] == '\n' &&
+                   strlen(refline) == PEELED_LINE_LENGTH &&
+                   refline[PEELED_LINE_LENGTH - 1] == '\n' &&
                    !get_sha1_hex(refline + 1, sha1)) {
                        hashcpy(last->u.value.peeled, sha1);
                        /*