Bug 1110 reported that the LOOP_GET_STATUS ioctl apparently returnes non-zero

error messages, contrary to the documentation.  Whatever.  This patch from
zhaoway <zw@debian.org> looks safe enough.
 -Erik
This commit is contained in:
Eric Andersen 2001-03-06 19:35:58 +00:00
parent 138ece09b5
commit 1a046d5f9d

View File

@ -1507,7 +1507,7 @@ extern char *find_unused_loop_device(void)
sprintf(dev, "/dev/loop%d", i);
if (stat(dev, &statbuf) == 0 && S_ISBLK(statbuf.st_mode)) {
if ((fd = open(dev, O_RDONLY)) >= 0) {
if (ioctl(fd, LOOP_GET_STATUS, &loopinfo) == -1) {
if (ioctl(fd, LOOP_GET_STATUS, &loopinfo) != 0) {
if (errno == ENXIO) { /* probably free */
close(fd);
return strdup(dev);