Add remap needed null check (#711)
* Add needed extra null check * Add test for added check * Add tests for nullptrs Signed-off-by: Jorge Perez <jjperez@ekumenlabs.com>
This commit is contained in:
parent
0d411f518e
commit
4e14874cf4
2 changed files with 12 additions and 0 deletions
|
@ -43,6 +43,7 @@ rcl_remap_copy(
|
|||
{
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(rule, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(rule_out, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(rule->impl, RCL_RET_INVALID_ARGUMENT);
|
||||
|
||||
if (NULL != rule_out->impl) {
|
||||
RCL_SET_ERROR_MSG("rule_out must be zero initialized");
|
||||
|
|
|
@ -596,6 +596,17 @@ TEST_F(CLASSNAME(TestRemapFixture, RMW_IMPLEMENTATION), internal_remap_use) {
|
|||
EXPECT_EQ(RCL_RET_BAD_ALLOC, rcl_remap_copy(parsed_args.impl->remap_rules, &remap_dst));
|
||||
parsed_args.impl->remap_rules->impl->allocator = alloc;
|
||||
|
||||
// Not valid null ptrs
|
||||
EXPECT_EQ(RCL_RET_INVALID_ARGUMENT, rcl_remap_copy(nullptr, &remap_dst));
|
||||
rcl_reset_error();
|
||||
EXPECT_EQ(RCL_RET_INVALID_ARGUMENT, rcl_remap_copy(parsed_args.impl->remap_rules, nullptr));
|
||||
rcl_reset_error();
|
||||
|
||||
// Not valid empty source
|
||||
rcl_remap_t remap_empty = rcl_get_zero_initialized_remap();
|
||||
EXPECT_EQ(RCL_RET_INVALID_ARGUMENT, rcl_remap_copy(&remap_empty, &remap_dst));
|
||||
rcl_reset_error();
|
||||
|
||||
// Expected usage
|
||||
EXPECT_EQ(RCL_RET_OK, rcl_remap_copy(parsed_args.impl->remap_rules, &remap_dst));
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue