mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
virchrdev: Use more g_autofree and VIR_AUTOCLOSE
Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
parent
15b821122e
commit
439eb82e23
@ -67,9 +67,9 @@ struct _virChrdevStreamInfo {
|
|||||||
*/
|
*/
|
||||||
static char *virChrdevLockFilePath(const char *dev)
|
static char *virChrdevLockFilePath(const char *dev)
|
||||||
{
|
{
|
||||||
char *path = NULL;
|
g_autofree char *path = NULL;
|
||||||
char *sanitizedPath = NULL;
|
g_autofree char *sanitizedPath = NULL;
|
||||||
char *devCopy;
|
g_autofree char *devCopy = NULL;
|
||||||
char *filename;
|
char *filename;
|
||||||
char *p;
|
char *p;
|
||||||
|
|
||||||
@ -92,10 +92,7 @@ static char *virChrdevLockFilePath(const char *dev)
|
|||||||
|
|
||||||
sanitizedPath = virFileSanitizePath(path);
|
sanitizedPath = virFileSanitizePath(path);
|
||||||
|
|
||||||
VIR_FREE(path);
|
return g_steal_pointer(&sanitizedPath);
|
||||||
VIR_FREE(devCopy);
|
|
||||||
|
|
||||||
return sanitizedPath;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -107,10 +104,10 @@ static char *virChrdevLockFilePath(const char *dev)
|
|||||||
*/
|
*/
|
||||||
static int virChrdevLockFileCreate(const char *dev)
|
static int virChrdevLockFileCreate(const char *dev)
|
||||||
{
|
{
|
||||||
char *path = NULL;
|
g_autofree char *path = NULL;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
int lockfd = -1;
|
g_autofree char *pidStr = NULL;
|
||||||
char *pidStr = NULL;
|
VIR_AUTOCLOSE lockfd = -1;
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
|
|
||||||
/* build lock file path */
|
/* build lock file path */
|
||||||
@ -161,7 +158,6 @@ static int virChrdevLockFileCreate(const char *dev)
|
|||||||
_("Couldn't write to lock file for "
|
_("Couldn't write to lock file for "
|
||||||
"device '%s' in path '%s'"),
|
"device '%s' in path '%s'"),
|
||||||
dev, path);
|
dev, path);
|
||||||
VIR_FORCE_CLOSE(lockfd);
|
|
||||||
unlink(path);
|
unlink(path);
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
@ -170,9 +166,6 @@ static int virChrdevLockFileCreate(const char *dev)
|
|||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
VIR_FORCE_CLOSE(lockfd);
|
|
||||||
VIR_FREE(path);
|
|
||||||
VIR_FREE(pidStr);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -184,10 +177,8 @@ static int virChrdevLockFileCreate(const char *dev)
|
|||||||
*/
|
*/
|
||||||
static void virChrdevLockFileRemove(const char *dev)
|
static void virChrdevLockFileRemove(const char *dev)
|
||||||
{
|
{
|
||||||
char *path = virChrdevLockFilePath(dev);
|
g_autofree char *path = virChrdevLockFilePath(dev);
|
||||||
if (path)
|
unlink(path);
|
||||||
unlink(path);
|
|
||||||
VIR_FREE(path);
|
|
||||||
}
|
}
|
||||||
#else /* #ifdef VIR_CHRDEV_LOCK_FILE_PATH */
|
#else /* #ifdef VIR_CHRDEV_LOCK_FILE_PATH */
|
||||||
/* file locking for character devices is disabled */
|
/* file locking for character devices is disabled */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user