ret = utils_mkdir_recursive(stream->path_name, S_IRWXU | S_IRWXG);
if (ret < 0) {
ERR("relay creating output directory");
- goto end;
+ goto err_free_stream;
}
/*
stream->tracefile_size, 0, relayd_uid, relayd_gid, NULL);
if (ret < 0) {
ERR("Create output file");
- goto end;
+ goto err_free_stream;
}
stream->fd = ret;
if (stream->tracefile_size) {
if (ret < 0) {
reply.ret_code = htobe32(LTTNG_ERR_UNK);
/* stream was not properly added to the ht, so free it */
- free(stream);
+ stream_destroy(stream);
} else {
reply.ret_code = htobe32(LTTNG_OK);
}
return ret;
err_free_stream:
- free(stream->path_name);
- free(stream->channel_name);
- free(stream);
+ stream_destroy(stream);
return ret;
}