diff options
author | Eric Andersen <andersen@codepoet.org> | 2001-03-06 19:35:58 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2001-03-06 19:35:58 +0000 |
commit | 1a046d5f9dd627711a6d212963beae3354b68374 (patch) | |
tree | cc3673d343ba9805836ec6c0cf61ebc75961da3b /utility.c | |
parent | 138ece09b5993debb472aa590999ae2221973f5a (diff) | |
download | busybox-w32-1a046d5f9dd627711a6d212963beae3354b68374.tar.gz busybox-w32-1a046d5f9dd627711a6d212963beae3354b68374.tar.bz2 busybox-w32-1a046d5f9dd627711a6d212963beae3354b68374.zip |
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
Diffstat (limited to 'utility.c')
-rw-r--r-- | utility.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1507,7 +1507,7 @@ extern char *find_unused_loop_device(void) | |||
1507 | sprintf(dev, "/dev/loop%d", i); | 1507 | sprintf(dev, "/dev/loop%d", i); |
1508 | if (stat(dev, &statbuf) == 0 && S_ISBLK(statbuf.st_mode)) { | 1508 | if (stat(dev, &statbuf) == 0 && S_ISBLK(statbuf.st_mode)) { |
1509 | if ((fd = open(dev, O_RDONLY)) >= 0) { | 1509 | if ((fd = open(dev, O_RDONLY)) >= 0) { |
1510 | if (ioctl(fd, LOOP_GET_STATUS, &loopinfo) == -1) { | 1510 | if (ioctl(fd, LOOP_GET_STATUS, &loopinfo) != 0) { |
1511 | if (errno == ENXIO) { /* probably free */ | 1511 | if (errno == ENXIO) { /* probably free */ |
1512 | close(fd); | 1512 | close(fd); |
1513 | return strdup(dev); | 1513 | return strdup(dev); |