summaryrefslogtreecommitdiff
path: root/dir-iterator.c
diff options
context:
space:
mode:
authorRené Scharfe <l.s.r@web.de>2017-08-19 05:32:37 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-08-19 07:40:25 (GMT)
commit5ff247ac0cc9b2d09c8c24bd0c8df12eed94aebc (patch)
tree3491f059ec09b1fedd756f2f76ba7c700574500e /dir-iterator.c
parentc6c08f7e9a94d062fb2f90687156798e78cf8991 (diff)
downloadgit-5ff247ac0cc9b2d09c8c24bd0c8df12eed94aebc.zip
git-5ff247ac0cc9b2d09c8c24bd0c8df12eed94aebc.tar.gz
git-5ff247ac0cc9b2d09c8c24bd0c8df12eed94aebc.tar.bz2
archive: don't queue excluded directories
Reject directories with the attribute export-ignore already while queuing them. This prevents read_tree_recursive() from descending into them and this avoids write_archive_entry() rejecting them later on, which queue_or_write_archive_entry() is not prepared for. Borrow the existing strbuf to build the full path to avoid string copies and extra allocations; just make sure we restore the original value before moving on. Keep checking any other attributes in write_archive_entry() as before, but avoid checking them twice. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'dir-iterator.c')
0 files changed, 0 insertions, 0 deletions