Skip to content

Commit 09a692c

Browse files
committed
Fix potential leak and improve readability
Signed-off-by: y-okumura-isp <[email protected]>
1 parent 42239d6 commit 09a692c

File tree

2 files changed

+9
-12
lines changed

2 files changed

+9
-12
lines changed

rcl/src/rcl/arguments.c

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -962,12 +962,10 @@ rcl_arguments_copy(
962962

963963
rcl_allocator_t allocator = args->impl->allocator;
964964

965-
do {
966-
rcl_ret_t ret = _rcl_allocate_initialized_arguments_impl(args_out, &allocator);
967-
if (RCL_RET_OK != ret) {
968-
return ret;
969-
}
970-
} while(false);
965+
rcl_ret_t ret = _rcl_allocate_initialized_arguments_impl(args_out, &allocator);
966+
if (RCL_RET_OK != ret) {
967+
return ret;
968+
}
971969

972970
if (args->impl->num_unparsed_args) {
973971
// Copy unparsed args
@@ -1014,7 +1012,7 @@ rcl_arguments_copy(
10141012
args_out->impl->num_remap_rules = args->impl->num_remap_rules;
10151013
for (int i = 0; i < args->impl->num_remap_rules; ++i) {
10161014
args_out->impl->remap_rules[i] = rcl_get_zero_initialized_remap();
1017-
rcl_ret_t ret = rcl_remap_copy(
1015+
ret = rcl_remap_copy(
10181016
&(args->impl->remap_rules[i]), &(args_out->impl->remap_rules[i]));
10191017
if (RCL_RET_OK != ret) {
10201018
if (RCL_RET_OK != rcl_arguments_fini(args_out)) {
@@ -1102,8 +1100,8 @@ rcl_arguments_fini(
11021100
}
11031101

11041102
if (NULL != args->impl->external_log_config_file) {
1105-
args->impl->allocator.deallocate(args->impl->external_log_config_file,
1106-
args->impl->allocator.state);
1103+
args->impl->allocator.deallocate(
1104+
args->impl->external_log_config_file, args->impl->allocator.state);
11071105
args->impl->external_log_config_file = NULL;
11081106
}
11091107

rcl_yaml_param_parser/src/parser.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1343,13 +1343,12 @@ static rcutils_ret_t parse_key(
13431343
}
13441344

13451345
ret = find_node(node_name_ns, params_st, node_idx);
1346+
allocator.deallocate(node_name_ns, allocator.state);
13461347
if (RCUTILS_RET_OK != ret) {
13471348
break;
13481349
}
13491350

1350-
allocator.deallocate(node_name_ns, allocator.state);
1351-
1352-
ret = rem_name_from_ns(ns_tracker, NS_TYPE_NODE, allocator);
1351+
ret = rem_name_from_ns(ns_tracker, NS_TYPE_NODE, allocator);
13531352
if (RCUTILS_RET_OK != ret) {
13541353
RCUTILS_SET_ERROR_MSG_WITH_FORMAT_STRING(
13551354
"Internal error adding node namespace at line %d", line_num);

0 commit comments

Comments
 (0)