Fix: sink.text.details: goto error when failing to add input port
authorSimon Marchi <simon.marchi@efficios.com>
Thu, 9 Apr 2020 17:55:05 +0000 (13:55 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Sat, 11 Apr 2020 14:04:44 +0000 (10:04 -0400)
If bt_self_component_sink_add_input_port fails, the current code does
not goto error.  This patch fixes it.  It also changes the switch, used
to convert from `add_port_status` to `status`, to a cast, as is the
practice throughout the project.

Change-Id: I82b2719316ad00ffd9d9c14b86b8890b98130669
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/3383
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
(cherry picked from commit c7f21c12d5cec35f3e48630cf603207748409847)
Reviewed-on: https://review.lttng.org/c/babeltrace/+/3362
CI-Build: Philippe Proulx <eeppeliteloop@gmail.com>
Tested-by: jenkins <jenkins@lttng.org>
src/plugins/text/details/details.c

index 4f304f7320f05554c83d7728dceb4613e2d19f36..95aabe1f7ef74b04f1990e0413d8877ec077cb5f 100644 (file)
@@ -373,18 +373,9 @@ bt_component_class_initialize_method_status details_init(
 
        add_port_status = bt_self_component_sink_add_input_port(comp,
                IN_PORT_NAME, NULL, NULL);
-       switch (add_port_status) {
-       case BT_SELF_COMPONENT_ADD_PORT_STATUS_OK:
-               status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_OK;
-               break;
-       case BT_SELF_COMPONENT_ADD_PORT_STATUS_ERROR:
-               status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR;
-               break;
-       case BT_SELF_COMPONENT_ADD_PORT_STATUS_MEMORY_ERROR:
-               status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR;
-               break;
-       default:
-               bt_common_abort();
+       if (add_port_status != BT_SELF_COMPONENT_ADD_PORT_STATUS_OK) {
+               status = (int) add_port_status;
+               goto error;
        }
 
        details_comp = create_details_comp(comp);
This page took 0.025549 seconds and 4 git commands to generate.