util: file: use VIR_AUTOCLOSE instead of VIR_FORCE_CLOSE

Signed-off-by: Shi Lei <shi_lei@massclouds.com>
This commit is contained in:
Shi Lei 2018-09-12 17:46:36 +08:00 committed by Michal Privoznik
parent 3e0786cc46
commit bd96c753e2

View File

@ -1969,29 +1969,22 @@ int
virFileIsCDROM(const char *path)
{
struct stat st;
int fd;
int ret = -1;
VIR_AUTOCLOSE fd = -1;
if ((fd = open(path, O_RDONLY | O_NONBLOCK)) < 0)
goto cleanup;
return -1;
if (fstat(fd, &st) < 0)
goto cleanup;
return -1;
if (!S_ISBLK(st.st_mode)) {
ret = 0;
goto cleanup;
}
if (!S_ISBLK(st.st_mode))
return 0;
/* Attempt to detect via a CDROM specific ioctl */
if (ioctl(fd, CDROM_DRIVE_STATUS, CDSL_CURRENT) >= 0)
ret = 1;
else
ret = 0;
return 1;
cleanup:
VIR_FORCE_CLOSE(fd);
return ret;
return 0;
}
#else