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
@ -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 */
|
/* Necessary evil to compensate for files that don't end with a newline */
|
||||||
if (bufc != i) {
|
if (bufc != i) {
|
||||||
i--;
|
i--;
|
||||||
goto make_token;
|
goto make_token;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
(void)close(fd);
|
||||||
|
|
||||||
free(buf);
|
free(buf);
|
||||||
|
|
||||||
for (i = numnode; i > 0; i--) {
|
for (i = numnode; i > 0; i--) {
|
||||||
|
Loading…
Reference in New Issue
Block a user