Fix another bug introduced with rev. 1.204; in vfs_donmount() if
the 'vfs_getopt(optlist, "errmsg", (void **)&errmsg, &errmsg_len)' call fails, 'errmsg' is left uninitialized, making the later tests against NULL meaningless, and the uses bogus. Thus initialize 'errmsg' to NULL beforehand. [1] While at it, remove the superfluous assignment of 0 to 'errmsg_len' if the above mentioned call fails as it's already initialized to 0. Submitted by: Michael Plass [1]
This commit is contained in:
parent
9dff0111c9
commit
aed760ef8a
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=161644
@ -575,6 +575,7 @@ vfs_donmount(struct thread *td, int fsflags, struct uio *fsoptions)
|
||||
int error, fstypelen, fspathlen, errmsg_len, errmsg_pos;
|
||||
int has_rw, has_noro;
|
||||
|
||||
errmsg = NULL;
|
||||
errmsg_len = 0;
|
||||
errmsg_pos = -1;
|
||||
has_rw = 0;
|
||||
@ -586,8 +587,6 @@ vfs_donmount(struct thread *td, int fsflags, struct uio *fsoptions)
|
||||
|
||||
if (vfs_getopt(optlist, "errmsg", (void **)&errmsg, &errmsg_len) == 0)
|
||||
errmsg_pos = vfs_getopt_pos(optlist, "errmsg");
|
||||
else
|
||||
errmsg_len = 0;
|
||||
|
||||
/*
|
||||
* We need these two options before the others,
|
||||
|
Loading…
Reference in New Issue
Block a user