Fix: error handling in kernel add_channel
[lttng-tools.git] / src / bin / lttng-sessiond / cmd.c
index 528665a141680d70d94bb979f5c76583bf454790..cbf2bceff27908a164128ce27328459b4e5cfadf 100644 (file)
@@ -754,7 +754,7 @@ static int start_kernel_session(struct ltt_kernel_session *ksess, int wpipe)
 
        /* Setup kernel consumer socket and send fds to it */
        ret = init_kernel_tracing(ksess);
-       if (ret < 0) {
+       if (ret != 0) {
                ret = LTTNG_ERR_KERN_START_FAIL;
                goto error;
        }
@@ -1831,7 +1831,7 @@ int cmd_register_consumer(struct ltt_session *session, int domain,
                const char *sock_path, struct consumer_data *cdata)
 {
        int ret, sock;
-       struct consumer_socket *socket;
+       struct consumer_socket *socket = NULL;
 
        assert(session);
        assert(cdata);
@@ -1891,9 +1891,12 @@ int cmd_register_consumer(struct ltt_session *session, int domain,
                goto error;
        }
 
-       ret = LTTNG_OK;
+       return LTTNG_OK;
 
 error:
+       if (socket) {
+               consumer_destroy_socket(socket);
+       }
        return ret;
 }
 
This page took 0.024054 seconds and 4 git commands to generate.