mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-04 11:21:56 +00:00
va_list was initialized once and passed to log_backend_put_sync_string() for each logging backend. State of such va_list was changed in each execution, resulting in different va_list state to be passed for consecutive log_backend_put_sync_string() calls. This results in undefined behavior and program crashes. Use va_copy() to copy va_list state to temporary variable for each logging backend and keep original va_list untouched. Pass such temporary state to log_backend_put_sync_string() to make sure state for all consecutive calls does not change. Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com> |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
Kconfig | ||
Kconfig.template.log_config | ||
log_backend_native_posix.c | ||
log_backend_net.c | ||
log_backend_rb.c | ||
log_backend_rtt.c | ||
log_backend_spinel.c | ||
log_backend_std.h | ||
log_backend_swo.c | ||
log_backend_uart.c | ||
log_backend_xtensa_sim.c | ||
log_cmds.c | ||
log_core.c | ||
log_list.c | ||
log_list.h | ||
log_minimal.c | ||
log_msg.c | ||
log_output_syst.c | ||
log_output.c |