Fix: remove set subdir call that uses bad ptr
[lttng-tools.git] / src / bin / lttng-sessiond / main.c
index c0cfddb96166840bfe3effdfe0e7dcf36566a7d6..a9bb2157e16b4089fa309bfb05c953bbf574780a 100644 (file)
@@ -1849,14 +1849,9 @@ static int copy_session_consumer(int domain, struct ltt_session *session)
                goto error;
        }
 
-       ret = consumer_set_subdir(session->consumer, session->name);
-       if (ret < 0) {
-               ret = LTTCOMM_FATAL;
-               goto error;
-       }
-
        /* Append correct directory to subdir */
-       strncat(consumer->subdir, dir_name, sizeof(consumer->subdir));
+       strncat(consumer->subdir, dir_name,
+                       sizeof(consumer->subdir) - strlen(consumer->subdir) - 1);
        DBG3("Copy session consumer subdir %s", consumer->subdir);
 
        ret = LTTCOMM_OK;
@@ -2032,6 +2027,7 @@ static int process_client_msg(struct command_ctx *cmd_ctx, int sock,
                pthread_mutex_lock(&kconsumer_data.pid_mutex);
                if (kconsumer_data.pid > 0) {
                        ret = LTTCOMM_KERN_CONSUMER_FAIL;
+                       pthread_mutex_unlock(&kconsumer_data.pid_mutex);
                        goto error;
                }
                pthread_mutex_unlock(&kconsumer_data.pid_mutex);
This page took 0.023451 seconds and 4 git commands to generate.