提交 439eb82e 编写于 作者: M Michal Privoznik

virchrdev: Use more g_autofree and VIR_AUTOCLOSE

Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
Reviewed-by: NErik Skultety <eskultet@redhat.com>
上级 15b82112
......@@ -67,9 +67,9 @@ struct _virChrdevStreamInfo {
*/
static char *virChrdevLockFilePath(const char *dev)
{
char *path = NULL;
char *sanitizedPath = NULL;
char *devCopy;
g_autofree char *path = NULL;
g_autofree char *sanitizedPath = NULL;
g_autofree char *devCopy = NULL;
char *filename;
char *p;
......@@ -92,10 +92,7 @@ static char *virChrdevLockFilePath(const char *dev)
sanitizedPath = virFileSanitizePath(path);
VIR_FREE(path);
VIR_FREE(devCopy);
return sanitizedPath;
return g_steal_pointer(&sanitizedPath);
}
/**
......@@ -107,10 +104,10 @@ static char *virChrdevLockFilePath(const char *dev)
*/
static int virChrdevLockFileCreate(const char *dev)
{
char *path = NULL;
g_autofree char *path = NULL;
int ret = -1;
int lockfd = -1;
char *pidStr = NULL;
g_autofree char *pidStr = NULL;
VIR_AUTOCLOSE lockfd = -1;
pid_t pid;
/* build lock file path */
......@@ -161,7 +158,6 @@ static int virChrdevLockFileCreate(const char *dev)
_("Couldn't write to lock file for "
"device '%s' in path '%s'"),
dev, path);
VIR_FORCE_CLOSE(lockfd);
unlink(path);
goto cleanup;
}
......@@ -170,9 +166,6 @@ static int virChrdevLockFileCreate(const char *dev)
ret = 0;
cleanup:
VIR_FORCE_CLOSE(lockfd);
VIR_FREE(path);
VIR_FREE(pidStr);
return ret;
}
......@@ -184,10 +177,8 @@ static int virChrdevLockFileCreate(const char *dev)
*/
static void virChrdevLockFileRemove(const char *dev)
{
char *path = virChrdevLockFilePath(dev);
if (path)
unlink(path);
VIR_FREE(path);
g_autofree char *path = virChrdevLockFilePath(dev);
unlink(path);
}
#else /* #ifdef VIR_CHRDEV_LOCK_FILE_PATH */
/* file locking for character devices is disabled */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册