ztest: comparisons against errno should not assign to it
888914486e
introduced this regression.
I used cscope to verify that there are no other instances of this in the
codebase. This is the one of the few bugs that are extremely easy to
identify using cscope.
Reviewed-by: Damian Szuberski <szuberskidamian@gmail.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Closes #14264
This commit is contained in:
parent
ba87ed1410
commit
2709ace096
|
@ -1133,14 +1133,14 @@ process_options(int argc, char **argv)
|
|||
const char *invalid_what = "ztest";
|
||||
char *val = zo->zo_alt_ztest;
|
||||
if (0 != access(val, X_OK) ||
|
||||
(strrchr(val, '/') == NULL && (errno = EINVAL)))
|
||||
(strrchr(val, '/') == NULL && (errno == EINVAL)))
|
||||
goto invalid;
|
||||
|
||||
int dirlen = strrchr(val, '/') - val;
|
||||
strlcpy(zo->zo_alt_libpath, val,
|
||||
MIN(sizeof (zo->zo_alt_libpath), dirlen + 1));
|
||||
invalid_what = "library path", val = zo->zo_alt_libpath;
|
||||
if (strrchr(val, '/') == NULL && (errno = EINVAL))
|
||||
if (strrchr(val, '/') == NULL && (errno == EINVAL))
|
||||
goto invalid;
|
||||
*strrchr(val, '/') = '\0';
|
||||
strlcat(val, "/lib", sizeof (zo->zo_alt_libpath));
|
||||
|
|
Loading…
Reference in New Issue