From: Karel Zak Date: Thu, 25 Oct 2007 10:10:31 +0000 (+0200) Subject: losetup: fix errno usage X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0e7cd33ef2d2e6307c5f647f0434e54bcc0f62e2;p=util-linux losetup: fix errno usage Signed-off-by: Karel Zak --- diff --git a/mount/lomount.c b/mount/lomount.c index 02b337f3..cea3aed4 100644 --- a/mount/lomount.c +++ b/mount/lomount.c @@ -339,16 +339,19 @@ set_loop(const char *device, const char *file, unsigned long long offset, } if (ioctl(fd, LOOP_SET_FD, ffd) < 0) { - close(fd); - close(ffd); + int rc = 1; + if (errno == EBUSY) { if (verbose) - printf(_("ioctl LOOP_SET_FD failed: %s\n"), strerror(errno)); - return 2; - } else { + printf(_("ioctl LOOP_SET_FD failed: %s\n"), + strerror(errno)); + rc = 2; + } else perror("ioctl: LOOP_SET_FD"); - return 1; - } + + close(fd); + close(ffd); + return rc; } close (ffd); @@ -383,7 +386,7 @@ set_loop(const char *device, const char *file, unsigned long long offset, return 0; } -int +int del_loop (const char *device) { int fd;