diff options
-rw-r--r-- | toys/posix/ls.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/toys/posix/ls.c b/toys/posix/ls.c index bba34313..44915fa7 100644 --- a/toys/posix/ls.c +++ b/toys/posix/ls.c @@ -298,7 +298,8 @@ static void listfiles(int dirfd, struct dirtree *indir) // Silently descend into single directory listed by itself on command line. // In this case only show dirname/total header when given -R. dt = indir->child; - if (S_ISDIR(dt->st.st_mode) && !dt->next && !(flags&(FLAG_d|FLAG_R))) { + if (dt && S_ISDIR(dt->st.st_mode) && !dt->next && !(flags&(FLAG_d|FLAG_R))) + { listfiles(open(dt->name, 0), TT.singledir = dt); return; |