Skip to content

Commit

Permalink
Add an allocator to the external logging initialization. (#430)
Browse files Browse the repository at this point in the history
* Add an allocator to the external logging initialization.

Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
  • Loading branch information
clalancette authored May 3, 2019
1 parent eabe426 commit 7660956
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
10 changes: 9 additions & 1 deletion rcl/include/rcl/logging_external_interface.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,21 @@
* logging library should use to configure itself.
* If no config file is provided this will be set to an empty string.
* Must be a NULL terminated c string.
* \param[in] allocator The allocator to use for memory allocation. This is
* an rcutils_allocator_t rather than an rcl_allocator_t to ensure that the
* rcl_logging_* packages don't have a circular dependency back to rcl.
* \todo TODO(clalancette) This API is marked RCL_PUBLIC, but is not built or
* exported from librcl. Instead, these headers should be split into a
* separate package which is then depended on by both rcl and the
* rcl_logging_* implementations. The duplicated headers from the
* implementations could then be removed.
* \return RCL_RET_OK if initialized successfully, or
* \return RCL_RET_ERROR if an unspecified error occurs.
*/
RCL_PUBLIC
RCL_WARN_UNUSED
rcl_ret_t
rcl_logging_external_initialize(const char * config_file);
rcl_logging_external_initialize(const char * config_file, rcutils_allocator_t allocator);

/// Free the resources allocated for the external logging system.
/**
Expand Down
2 changes: 1 addition & 1 deletion rcl/src/rcl/logging.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ rcl_logging_configure(const rcl_arguments_t * global_args, const rcl_allocator_t
}
}
if (g_rcl_logging_ext_lib_enabled) {
status = rcl_logging_external_initialize(config_file);
status = rcl_logging_external_initialize(config_file, g_logging_allocator);
if (RCL_RET_OK == status) {
rcl_logging_external_set_logger_level(NULL, default_level);
g_rcl_logging_out_handlers[g_rcl_logging_num_out_handlers++] =
Expand Down

0 comments on commit 7660956

Please sign in to comment.