Thread (15 messages) flat view 15 messages, 5 authors, 2020-01-17
STALE2423d

[PATCH v3 0/4] dir: more fill_directory() fixes

From: Elijah Newren via GitGitGadget <hidden>
Date: 2020-01-16 20:22:02

This is a follow up to en/fill-directory-fixes, and has grown from 1 patch
in v1 to 4 patches in v2, 3 of which are submissions by others to the git
list that I've just combined into one series since they are all about
fill_directory().

The first two patches may make sense to include in maint at some point,
though Stolee isn't that concerned about this regression[5][6].

 * The first patch is Kevin and Stolee's testcase showing a regression in
   "git clean -f "[1]
 * The second patch is a "simple" fix for that testcase with a pretty long
   (and slightly embarrassing though entertaining) backstory.
 * The third patch was from v1, and is a small tweak made by me to a patch
   proposed by Peff[2] (signoff from [3]) to avoid needing to create a
   dirent.
 * The fourth patch was a follow-up from Peff in response to V1 fixing a
   code comment[4].

[1] 
https://lore.kernel.org/git/pull.526.git.1579119946211.gitgitgadget@gmail.com/ (local)
[2] 
https://lore.kernel.org/git/20191219222403.GA705525@coredump.intra.peff.net/ (local)
[3] 
https://lore.kernel.org/git/20200114220357.GA3957260@coredump.intra.peff.net/ (local)
[4] 
https://lore.kernel.org/git/20200115202146.GA4091171@coredump.intra.peff.net/ (local)
[5] 
https://lore.kernel.org/git/354fa43b-0e62-1ee5-a63f-59d9b2da7d3f@gmail.com/ (local)
[6] 
https://lore.kernel.org/git/e008da66-defe-d2b0-410b-64b7754b9c6e@gmail.com/ (local)

Derrick Stolee (1):
  clean: demonstrate a bug with pathspecs

Elijah Newren (1):
  dir: treat_leading_path() and read_directory_recursive(), round 2

Jeff King (2):
  dir: restructure in a way to avoid passing around a struct dirent
  dir: point treat_leading_path() warning to the right place

 dir.c            | 83 ++++++++++++++++++++++--------------------------
 t/t7300-clean.sh |  9 ++++++
 2 files changed, 47 insertions(+), 45 deletions(-)


base-commit: d0654dc308b0ba76dd8ed7bbb33c8d8f7aacd783
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-692%2Fnewren%2Favoid-dirent-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-692/newren/avoid-dirent-v3
Pull-Request: https://github.com/git/git/pull/692

Range-diff vs v2:

 -:  ---------- > 1:  9efed585ef clean: demonstrate a bug with pathspecs
 -:  ---------- > 2:  ea95186774 dir: treat_leading_path() and read_directory_recursive(), round 2
 1:  edb18304b2 = 3:  5b8fa6e5a7 dir: restructure in a way to avoid passing around a struct dirent
 -:  ---------- > 4:  9d346f8b6b dir: point treat_leading_path() warning to the right place

-- 
gitgitgadget
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help