[hackers] [sbase] Remove st != NULL checks from recursor functions || Michael Forney
commit a5612b0d08b9abb4e65acaa3d322581af2fd7a39
Author: Michael Forney <mforney_AT_mforney.org>
AuthorDate: Wed Dec 14 19:40:02 2016 -0800
Commit: Anselm R Garbe <anselm_AT_garbe.us>
CommitDate: Mon Jul 3 21:03:02 2017 +0200
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.
diff --git a/chgrp.c b/chgrp.c
index 299238b..5d3a71b 100644
--- a/chgrp.c
+++ b/chgrp.c
_AT_@ -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
index a0d96f1..109a7e5 100644
--- a/chmod.c
+++ b/chmod.c
_AT_@ -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
index 2009507..d7dc8e0 100644
--- a/chown.c
+++ b/chown.c
_AT_@ -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
index 3dc3545..fb2c90b 100644
--- a/du.c
+++ b/du.c
_AT_@ -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
index f6a54b6..11c20fb 100644
--- a/libutil/rm.c
+++ b/libutil/rm.c
_AT_@ -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
index 71719b0..d2161d4 100644
--- a/tar.c
+++ b/tar.c
_AT_@ -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);
}
Received on Mon Jul 03 2017 - 21:06:19 CEST
This archive was generated by hypermail 2.3.0
: Mon Jul 03 2017 - 21:12:32 CEST