From aa3c0b0cda30e705c66fa2e896bf2f2fbadb6d68 Mon Sep 17 00:00:00 2001 From: Pim van Pelt Date: Sun, 4 Nov 2018 20:18:27 +0100 Subject: [PATCH] Align log_print_prefix() elements, with truncation if they're too long --- unittest/mgos_mock.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/unittest/mgos_mock.c b/unittest/mgos_mock.c index 063a142..dc15caf 100644 --- a/unittest/mgos_mock.c +++ b/unittest/mgos_mock.c @@ -7,6 +7,8 @@ int _mgos_timers = 0; int log_print_prefix(enum cs_log_level l, const char *func, const char *file) { char ll_str[6]; + char fn_str[16]; + char fu_str[41]; switch (l) { case LL_ERROR: @@ -30,9 +32,17 @@ int log_print_prefix(enum cs_log_level l, const char *func, const char *file) { break; default: // LL_NONE + strncpy(ll_str, "?????", sizeof(ll_str)); return 0; } - printf("%-5s %-15s %-40s| ", ll_str, file, func); + + memset(fu_str, 0, sizeof(fu_str)); + strncpy(fu_str, func, sizeof(fu_str)-1); + + memset(fn_str, 0, sizeof(fn_str)); + strncpy(fn_str, file, sizeof(fn_str)-1); + + printf("%-5s %-15s %-40s| ", ll_str, fn_str, fu_str); return 1; }