From f98d37ec65e2e731ab6ef6548d6ed55add868a00 Mon Sep 17 00:00:00 2001 From: Chris Lalancette Date: Tue, 30 Apr 2019 15:59:45 -0400 Subject: [PATCH] Make sure to initialize the bool field. (#426) This way we avoid tripping a Fast-CDR check for a 0 or 1 in the bool field. Signed-off-by: Chris Lalancette --- rcl/test/rcl/test_service.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rcl/test/rcl/test_service.cpp b/rcl/test/rcl/test_service.cpp index 9d5db1a9d..93a303fb2 100644 --- a/rcl/test/rcl/test_service.cpp +++ b/rcl/test/rcl/test_service.cpp @@ -166,6 +166,12 @@ TEST_F(CLASSNAME(TestServiceFixture, RMW_IMPLEMENTATION), test_service_nominal) // Initialize a request. test_msgs__srv__Primitives_Request client_request; test_msgs__srv__Primitives_Request__init(&client_request); + // TODO(clalancette): the C __init methods do not initialize all structure + // members, so the numbers in the fields not explicitly set is arbitrary. + // The CDR deserialization in Fast-CDR requires a 0 or 1 for bool fields, + // so we explicitly initialize that even though we don't use it. This can be + // removed once the C __init methods initialize all members by default. + client_request.bool_value = false; client_request.uint8_value = 1; client_request.uint32_value = 2; int64_t sequence_number;