mirror of
https://github.com/freebsd/freebsd-src
synced 2024-09-06 17:18:32 +00:00
Fix a (false positive?) Argument cannot be negative coverity defect.
Rather than guarding close(fd) with an fd >= 0 test and setting fd to -1 when it is closed to avoid a potential double-close, just move the close() call after the conditional "goto make_token". This moves the close() call totally outside the loop to avoid the possibility of calling it twice. This should also prevent a Coverity warning about checking fd for validity after it was previously passed to read(). Reported by: Coverity CID: 1355335 MFC after: 1 week X-MFC with: r299484
This commit is contained in:
parent
b3a734483e
commit
290dadbd56
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=301574
|
@ -199,17 +199,14 @@ randomize_fd(int fd, int type, int unique, double denom)
|
|||
}
|
||||
}
|
||||
|
||||
if (fd >= 0) {
|
||||
(void)close(fd);
|
||||
fd = -1;
|
||||
}
|
||||
|
||||
/* Necessary evil to compensate for files that don't end with a newline */
|
||||
if (bufc != i) {
|
||||
i--;
|
||||
goto make_token;
|
||||
}
|
||||
|
||||
(void)close(fd);
|
||||
|
||||
free(buf);
|
||||
|
||||
for (i = numnode; i > 0; i--) {
|
||||
|
|
Loading…
Reference in a new issue