X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=tree.c;h=62fed632d8a1ade389dd645b5887155c21ae25ba;hb=29499c0b2741cc2ea13b78a342048bad928dfe2a;hp=676e9f710ca8d5a568e0c6ea2fa88132da81b48c;hpb=3c524002d67471f8ef5455ef0e5ce3e6fc846b32;p=~andy%2Fgit diff --git a/tree.c b/tree.c index 676e9f710..62fed632d 100644 --- a/tree.c +++ b/tree.c @@ -22,7 +22,8 @@ static int read_one_entry_opt(const unsigned char *sha1, const char *base, int b ce = xcalloc(1, size); ce->ce_mode = create_ce_mode(mode); - ce->ce_flags = create_ce_flags(baselen + len, stage); + ce->ce_flags = create_ce_flags(stage); + ce->ce_namelen = baselen + len; memcpy(ce->name, base, baselen); memcpy(ce->name + baselen, pathname, len+1); hashcpy(ce->sha1, sha1); @@ -133,8 +134,8 @@ static int cmp_cache_name_compare(const void *a_, const void *b_) ce1 = *((const struct cache_entry **)a_); ce2 = *((const struct cache_entry **)b_); - return cache_name_compare(ce1->name, ce1->ce_flags, - ce2->name, ce2->ce_flags); + return cache_name_stage_compare(ce1->name, ce1->ce_namelen, ce_stage(ce1), + ce2->name, ce2->ce_namelen, ce_stage(ce2)); } int read_tree(struct tree *tree, int stage, struct pathspec *match)