sbase

suckless unix tools
git clone git://git.2f30.org/sbase.git
Log | Files | Refs | README | LICENSE

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:
chgrp.c | 4++--
chmod.c | 4++--
chown.c | 2+-
du.c | 6+++---
libutil/rm.c | 2+-
tar.c | 2+-
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); }