[PATCH v3 0/2] [GSoC] remove_subtree(): reimplement using iterators
- From
Daniel Ferreira <bnmvco@gmail.com>
- Date
- Mar 25, 2017, 18:12 UTC
- Message-ID
- <1490465551-71056-1-git-send-email-bnmvco@gmail.com>
This is the third version of the GSoC microproject of refactoring remove_subtree() from recursively using readdir() to use dir_iterator. Below are the threads for other versions:
v1: https://public-inbox.org/git/CAGZ79kZwT-9mHTiOJ5CEjk2wDFkn6+NcogjX0=vjhsAh16ANYg@mail.gmail.com/T/#mae023e7a7d7626f00e0923833c4359f5af493730 v2: https://public-inbox.org/git/CACsJy8Dxh-QPBBLfaFWPAWUsbA9GVXA7x+mXLjEvYKhk1zOpig@mail.gmail.com/T/#t
Duy suggested adding features to dir_iterator might go beyond the intention of a microproject, but I figured I might go for it to learn more about the project.
The dir_iterator reimplementation has been tested in a separate binary I created (and linked with libgit.a) to reproduce remove_subtree()'s contents. As pointed out in the last thread, git's tests for this function were unable to catch a daunting bug I had introduced, and I still haven't been able to come up with a way to reproduce remove_subtree() being called. Any help?
Thank you all again for all the reviews.
Daniel Ferreira (2): dir_iterator: iterate over dir after its contents remove_subtree(): reimplement using iterators
dir-iterator.c | 100 ++++++++++++++++++++++++++++++++++++++++++++------------- dir-iterator.h | 7 ++++ entry.c | 32 +++++++----------- 3 files changed, 95 insertions(+), 44 deletions(-)
-- 2.7.4 (Apple Git-66)