]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
lxclock: cleanup lxclock_name()
authorChristian Brauner <christian.brauner@ubuntu.com>
Wed, 9 Dec 2020 10:18:10 +0000 (11:18 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Thu, 10 Dec 2020 19:39:54 +0000 (20:39 +0100)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/lxclock.c

index a1361be40f08ab03875db0b69227432e4667b788..019dbe80b7f856506a13cbf01057591c86faf22c 100644 (file)
@@ -101,10 +101,8 @@ static char *lxclock_name(const char *p, const char *n)
        len += strlen(rundir);
 
        dest = malloc(len);
-       if (!dest) {
-               free(rundir);
+       if (!dest)
                return NULL;
-       }
 
        ret = snprintf(dest, len, "%s/lxc/lock/%s", rundir, p);
        if (ret < 0 || (size_t)ret >= len) {
@@ -132,20 +130,18 @@ static char *lxclock_name(const char *p, const char *n)
 
 static sem_t *lxc_new_unnamed_sem(void)
 {
+       __do_free sem_t *s = NULL;
        int ret;
-       sem_t *s;
 
        s = malloc(sizeof(*s));
        if (!s)
-               return NULL;
+               return ret_set_errno(NULL, ENOMEM);
 
        ret = sem_init(s, 0, 1);
-       if (ret < 0) {
-               free(s);
+       if (ret < 0)
                return NULL;
-       }
 
-       return s;
+       return move_ptr(s);
 }
 
 struct lxc_lock *lxc_newlock(const char *lxcpath, const char *name)