diff options
author | Junio C Hamano <gitster@pobox.com> | 2008-11-02 13:37:13 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-11-02 13:37:13 -0800 |
commit | 86e67a088c581da4da36acf0edd8c27b1033e51e (patch) | |
tree | ff6c53429e67c4f44f7c7b07cfa8bcb980c7570a /builtin-ls-files.c | |
parent | d11ddaff021be8006e71b43a5205c48f2dac7f18 (diff) | |
parent | 98fa473887d0bebd38d568bb07232a336a642dcf (diff) | |
download | git-86e67a088c581da4da36acf0edd8c27b1033e51e.tar.gz git-86e67a088c581da4da36acf0edd8c27b1033e51e.tar.xz |
Merge branch 'jk/maint-ls-files-other' into maint
* jk/maint-ls-files-other:
refactor handling of "other" files in ls-files and status
Diffstat (limited to 'builtin-ls-files.c')
-rw-r--r-- | builtin-ls-files.c | 33 |
1 files changed, 2 insertions, 31 deletions
diff --git a/builtin-ls-files.c b/builtin-ls-files.c index 068f42469..b48327db9 100644 --- a/builtin-ls-files.c +++ b/builtin-ls-files.c @@ -91,39 +91,10 @@ static void show_other_files(struct dir_struct *dir) { int i; - - /* - * Skip matching and unmerged entries for the paths, - * since we want just "others". - * - * (Matching entries are normally pruned during - * the directory tree walk, but will show up for - * gitlinks because we don't necessarily have - * dir->show_other_directories set to suppress - * them). - */ for (i = 0; i < dir->nr; i++) { struct dir_entry *ent = dir->entries[i]; - int len, pos; - struct cache_entry *ce; - - /* - * Remove the '/' at the end that directory - * walking adds for directory entries. - */ - len = ent->len; - if (len && ent->name[len-1] == '/') - len--; - pos = cache_name_pos(ent->name, len); - if (0 <= pos) - continue; /* exact match */ - pos = -pos - 1; - if (pos < active_nr) { - ce = active_cache[pos]; - if (ce_namelen(ce) == len && - !memcmp(ce->name, ent->name, len)) - continue; /* Yup, this one exists unmerged */ - } + if (!cache_name_is_other(ent->name, ent->len)) + continue; show_dir_entry(tag_other, ent); } } |