aboutsummaryrefslogtreecommitdiffstats
path: root/worktree.c
diff options
context:
space:
mode:
Diffstat (limited to 'worktree.c')
-rw-r--r--worktree.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/worktree.c b/worktree.c
index 237517baee..f35ac40a84 100644
--- a/worktree.c
+++ b/worktree.c
@@ -128,8 +128,10 @@ struct worktree **get_worktrees(void)
dir = opendir(path.buf);
strbuf_release(&path);
if (dir) {
- while ((d = readdir_skip_dot_and_dotdot(dir)) != NULL) {
+ while ((d = readdir(dir)) != NULL) {
struct worktree *linked = NULL;
+ if (is_dot_or_dotdot(d->d_name))
+ continue;
if ((linked = get_linked_worktree(d->d_name))) {
ALLOC_GROW(list, counter + 1, alloc);
@@ -484,9 +486,13 @@ int submodule_uses_worktrees(const char *path)
if (!dir)
return 0;
- d = readdir_skip_dot_and_dotdot(dir);
- if (d != NULL)
+ while ((d = readdir(dir)) != NULL) {
+ if (is_dot_or_dotdot(d->d_name))
+ continue;
+
ret = 1;
+ break;
+ }
closedir(dir);
return ret;
}