The GArray allocated in bt_param_validation_validate is never freed, fix
that. Furthermore, there's a spurious call to
g_ptr_array_new_with_free_func that shouldn't be there, probably the
result of a bad merge or bad edit, causing another leak. Remove that
one.
Change-Id: I89afeaa7e6ee67b6536daa42dc2c6d74ec79ae0c
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/2233
Tested-by: jenkins <jenkins@lttng.org>
Reviewed-by: Francis Deslauriers <francis.deslauriers@efficios.com>
struct bt_param_validation_map_value_descr map_value_descr;
enum bt_param_validation_status status;
- ctx.error = NULL;
+ memset(&ctx, '\0', sizeof(ctx));
+
ctx.scope_stack = g_array_new(FALSE, FALSE,
sizeof(struct validate_ctx_stack_element));
- g_ptr_array_new_with_free_func(g_free);
if (!ctx.scope_stack) {
status = BT_PARAM_VALIDATION_STATUS_MEMORY_ERROR;
goto end;
*error = ctx.error;
ctx.error = NULL;
+ if (ctx.scope_stack) {
+ g_array_free(ctx.scope_stack, TRUE);
+ }
+
return status;
}