]> git.ipfire.org Git - thirdparty/git.git/commit - dir.c
dir.[ch]: add 'follow_symlink' arg to 'get_dtype'
authorVictoria Dye <vdye@github.com>
Mon, 9 Oct 2023 21:58:55 +0000 (21:58 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Oct 2023 22:53:13 +0000 (15:53 -0700)
commitaa79636fe70247a19648d73e52a7774536100567
tree8c98aea4e38c513512d92fea9e38fbf1f926ed3b
parent6dc10043338bbb29ffd7f8fc431f37b0fed08ae6
dir.[ch]: add 'follow_symlink' arg to 'get_dtype'

Add a 'follow_symlink' boolean option to 'get_type()'. If 'follow_symlink'
is enabled, DT_LNK (in addition to DT_UNKNOWN) d_types triggers the
stat-based d_type resolution, using 'stat' instead of 'lstat' to get the
type of the followed symlink. Note that symlinks are not followed
recursively, so a symlink pointing to another symlink will still resolve to
DT_LNK.

Update callers in 'diagnose.c' to specify 'follow_symlink = 0' to preserve
current behavior.

Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diagnose.c
dir.c
dir.h