diff --git a/rosbridge_library/src/rosbridge_library/internal/message_conversion.py b/rosbridge_library/src/rosbridge_library/internal/message_conversion.py index 1dc1a24a0..d31af0010 100644 --- a/rosbridge_library/src/rosbridge_library/internal/message_conversion.py +++ b/rosbridge_library/src/rosbridge_library/internal/message_conversion.py @@ -132,11 +132,10 @@ def populate_instance(msg, inst): def _from_inst(inst, rostype): global bson_only_mode - # Special case for uint8[], we encode the string + # Special case for uint8[] for binary_type, expression in ros_binary_types_list_braces: if expression.sub(binary_type, rostype) in ros_binary_types: - encoded = get_encoder()(inst) - return encoded if python2 else encoded.decode('ascii') + return _to_binary_inst(inst) # Check for time or duration if rostype in ros_time_types: