commit a5612b0d08b9abb4e65acaa3d322581af2fd7a39
parent af392d1a764d7420c7b05bb9e13d7766a5979894
Author: Michael Forney <mforney@mforney.org>
Date: Wed, 14 Dec 2016 19:40:02 -0800
Remove st != NULL checks from recursor functions
In the description of 3111908b034c73673a2f079b2b13a88c18379baa, it says
that the functions must be able to handle st being NULL, but recurse
always passes a valid pointer. The only function that was ever passed
NULL was rm(), but this was changed to go through recurse in
2f4ab527391135e651b256f8654b050ea4a48f3d, so now the checks are
pointless.
Diffstat:
6 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/chgrp.c b/chgrp.c
@@ -26,10 +26,10 @@ chgrp(const char *path, struct stat *st, void *data, struct recursor *r)
chownf = chown;
}
- if (st && chownf(path, st->st_uid, gid) < 0) {
+ if (chownf(path, st->st_uid, gid) < 0) {
weprintf("%s %s:", chownf_name, path);
ret = 1;
- } else if (st && S_ISDIR(st->st_mode)) {
+ } else if (S_ISDIR(st->st_mode)) {
recurse(path, NULL, r);
}
}
diff --git a/chmod.c b/chmod.c
@@ -13,11 +13,11 @@ chmodr(const char *path, struct stat *st, void *data, struct recursor *r)
{
mode_t m;
- m = parsemode(modestr, st ? st->st_mode : 0, mask);
+ m = parsemode(modestr, st->st_mode, mask);
if (chmod(path, m) < 0) {
weprintf("chmod %s:", path);
ret = 1;
- } else if (st && S_ISDIR(st->st_mode)) {
+ } else if (S_ISDIR(st->st_mode)) {
recurse(path, NULL, r);
}
}
diff --git a/chown.c b/chown.c
@@ -32,7 +32,7 @@ chownpwgr(const char *path, struct stat *st, void *data, struct recursor *r)
if (chownf(path, uid, gid) < 0) {
weprintf("%s %s:", chownf_name, path);
ret = 1;
- } else if (st && S_ISDIR(st->st_mode)) {
+ } else if (S_ISDIR(st->st_mode)) {
recurse(path, NULL, r);
}
}
diff --git a/du.c b/du.c
@@ -39,11 +39,11 @@ du(const char *path, struct stat *st, void *total, struct recursor *r)
{
off_t subtotal = 0;
- if (st && S_ISDIR(st->st_mode))
+ if (S_ISDIR(st->st_mode))
recurse(path, &subtotal, r);
- *((off_t *)total) += subtotal + nblks(st ? st->st_blocks : 0);
+ *((off_t *)total) += subtotal + nblks(st->st_blocks);
- if (!sflag && r->depth <= maxdepth && r->depth && st && (S_ISDIR(st->st_mode) || aflag))
+ if (!sflag && r->depth <= maxdepth && r->depth && (S_ISDIR(st->st_mode) || aflag))
printpath(subtotal + nblks(st->st_blocks), path);
}
diff --git a/libutil/rm.c b/libutil/rm.c
@@ -13,7 +13,7 @@ int rm_status = 0;
void
rm(const char *path, struct stat *st, void *data, struct recursor *r)
{
- if (!r->maxdepth && st && S_ISDIR(st->st_mode)) {
+ if (!r->maxdepth && S_ISDIR(st->st_mode)) {
recurse(path, NULL, r);
if (rmdir(path) < 0) {
diff --git a/tar.c b/tar.c
@@ -370,7 +370,7 @@ c(const char *path, struct stat *st, void *data, struct recursor *r)
if (vflag)
puts(path);
- if (st && S_ISDIR(st->st_mode))
+ if (S_ISDIR(st->st_mode))
recurse(path, NULL, r);
}