aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--toys/posix/find.c2
-rw-r--r--toys/posix/ls.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/toys/posix/find.c b/toys/posix/find.c
index 02fdf3c4..3317448a 100644
--- a/toys/posix/find.c
+++ b/toys/posix/find.c
@@ -217,7 +217,7 @@ static int do_find(struct dirtree *new)
// skip . and .. below topdir, handle -xdev and -depth
if (new) {
// Handle stat failures first.
- if (!new->st.st_blksize && !new->st.st_dev && !new->st.st_ino) {
+ if (new->again&2) {
if (!new->parent || errno != ENOENT) {
perror_msg("'%s'", s = dirtree_path(new, 0));
free(s);
diff --git a/toys/posix/ls.c b/toys/posix/ls.c
index 4ae352af..65031587 100644
--- a/toys/posix/ls.c
+++ b/toys/posix/ls.c
@@ -585,7 +585,7 @@ void ls_main(void)
// note: double_list->prev temporarily goes in dirtree->parent
if (dt) {
- if (!dt->st.st_blksize && !dt->st.st_dev && !dt->st.st_ino) {
+ if (dt->again&2) {
perror_msg_raw(*s);
free(dt);
} else dlist_add_nomalloc((void *)&TT.files->child, (void *)dt);