mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-06 16:40:47 +00:00
stress2: Use the proper type for the getopt(3) return value
On arm platforms "char" is typically unsigned, in which case the test "(c = getopt(...)) != -1" does not behave as desired. Reviewed by: pho MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D45365
This commit is contained in:
parent
4c053c17f2
commit
568be71de3
|
@ -85,8 +85,7 @@ main(int argc, char *argv[])
|
|||
struct stat st;
|
||||
off_t pos;
|
||||
size_t size;
|
||||
int fd, i, times;
|
||||
char c;
|
||||
int c, fd, i, times;
|
||||
|
||||
times = 1;
|
||||
size = 0;
|
||||
|
@ -126,18 +125,20 @@ main(int argc, char *argv[])
|
|||
}
|
||||
|
||||
for (i = 0; i < times; i++) {
|
||||
char ch;
|
||||
|
||||
pos = arc4random() % size;
|
||||
if (lseek(fd, pos, SEEK_SET) == -1)
|
||||
err(1, "lseek()");
|
||||
if (read(fd, &c, 1) != 1)
|
||||
if (read(fd, &ch, 1) != 1)
|
||||
err(1, "read()");
|
||||
if (arc4random() % 100 < 98)
|
||||
flip(&c, 1);
|
||||
flip(&ch, 1);
|
||||
else
|
||||
trash(&c);
|
||||
trash(&ch);
|
||||
if (lseek(fd, pos, SEEK_SET) == -1)
|
||||
err(1, "lseek()");
|
||||
if (write(fd, &c, 1) != 1)
|
||||
if (write(fd, &ch, 1) != 1)
|
||||
err(1, "write()");
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue