From e1c56a6321707b8c34244564d18bb831f9c224f7 Mon Sep 17 00:00:00 2001 From: David Phillips Date: Sun, 1 Oct 2017 16:36:05 +1300 Subject: [PATCH] chmod: Use DIRFIRST Previously, running `chmod 777` on a directory that had no read or execute access (e.g. 111 or 000) would cause chmod to throw its toys since it was trying to opendir before having added read permission to the directory. --- chmod.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chmod.c b/chmod.c index f671f32..c12d2f4 100644 --- a/chmod.c +++ b/chmod.c @@ -32,7 +32,7 @@ int main(int argc, char *argv[]) { struct recursor r = { .fn = chmodr, .hist = NULL, .depth = 0, .maxdepth = 1, - .follow = 'P', .flags = 0 }; + .follow = 'P', .flags = DIRFIRST }; size_t i; argv0 = *argv, argv0 ? (argc--, argv++) : (void *)0;