From 0934fa003959af15e446f92c46cec04256a3b6dc Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Fri, 30 Aug 2024 14:17:13 -0400 Subject: [PATCH] src.ctf.fs: fix error path of ctf_fs_init If ctf_fs_create fails (returns nullptr), we don't want to call bt_self_component_set_data. Return early if that happens. Change-Id: Ib5766c6795a841ee1c2abc30e1751f9f1930f985 Reviewed-on: https://review.lttng.org/c/babeltrace/+/13200 Reviewed-by: Philippe Proulx --- src/plugins/ctf/fs-src/fs.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/plugins/ctf/fs-src/fs.cpp b/src/plugins/ctf/fs-src/fs.cpp index e0b6468d..630a3513 100644 --- a/src/plugins/ctf/fs-src/fs.cpp +++ b/src/plugins/ctf/fs-src/fs.cpp @@ -1510,17 +1510,14 @@ bt_component_class_initialize_method_status ctf_fs_init(bt_self_component_source const bt_value *params, void *) { try { - bt_component_class_initialize_method_status ret = - BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_OK; - ctf_fs_component::UP ctf_fs = ctf_fs_create(bt2::ConstMapValue {params}, self_comp_src); if (!ctf_fs) { - ret = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR; + return BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR; } bt_self_component_set_data(bt_self_component_source_as_self_component(self_comp_src), ctf_fs.release()); - return ret; + return BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_OK; } catch (const std::bad_alloc&) { return BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR; } catch (const bt2::Error&) { -- 2.34.1