fill_sha1_file: write "boring" characters
[gitweb.git] / sha1_file.c
index 011532a7093c150ba401f6dc48fdbe47bccb1462..da7b9226051bf27a3a5802544b6527b3d6121824 100644 (file)
@@ -178,10 +178,12 @@ static void fill_sha1_path(char *pathbuf, const unsigned char *sha1)
        for (i = 0; i < 20; i++) {
                static char hex[] = "0123456789abcdef";
                unsigned int val = sha1[i];
-               char *pos = pathbuf + i*2 + (i > 0);
-               *pos++ = hex[val >> 4];
-               *pos = hex[val & 0xf];
+               *pathbuf++ = hex[val >> 4];
+               *pathbuf++ = hex[val & 0xf];
+               if (!i)
+                       *pathbuf++ = '/';
        }
+       *pathbuf = '\0';
 }
 
 const char *sha1_file_name(const unsigned char *sha1)
@@ -198,8 +200,6 @@ const char *sha1_file_name(const unsigned char *sha1)
                die("insanely long object directory %s", objdir);
        memcpy(buf, objdir, len);
        buf[len] = '/';
-       buf[len+3] = '/';
-       buf[len+42] = '\0';
        fill_sha1_path(buf + len + 1, sha1);
        return buf;
 }
@@ -406,8 +406,6 @@ struct alternate_object_database *alloc_alt_odb(const char *dir)
 
        ent->name = ent->scratch + dirlen + 1;
        ent->scratch[dirlen] = '/';
-       ent->scratch[dirlen + 3] = '/';
-       ent->scratch[entlen-1] = 0;
 
        return ent;
 }