From 2b92c259db950c2aef03f14e47e4994546765265 Mon Sep 17 00:00:00 2001 From: Saya Sugiura Date: Tue, 28 Jul 2020 18:08:45 +0900 Subject: logstorage: snprintf return check snprinf will return the number of characters printed if succeeded. related commits: 0ae98e7 snprintf ret > 0 is not always an error 676e8fc fix some gcc9 compiler warnings Signed-off-by: Saya Sugiura --- src/offlinelogstorage/dlt_offline_logstorage_behavior.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/offlinelogstorage/dlt_offline_logstorage_behavior.c b/src/offlinelogstorage/dlt_offline_logstorage_behavior.c index fa6aba5..9c121e0 100644 --- a/src/offlinelogstorage/dlt_offline_logstorage_behavior.c +++ b/src/offlinelogstorage/dlt_offline_logstorage_behavior.c @@ -89,9 +89,10 @@ void dlt_logstorage_log_file_name(char *log_file_name, char stamp[DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1] = { 0 }; time_t t = time(NULL); struct tm tm_info; + ssize_t n = 0; tzset(); localtime_r(&t, &tm_info); - if (snprintf(stamp, + n = snprintf(stamp, DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1, "%c%04d%02d%02d-%02d%02d%02d", file_config->logfile_delimiter, @@ -100,7 +101,8 @@ void dlt_logstorage_log_file_name(char *log_file_name, tm_info.tm_mday, tm_info.tm_hour, tm_info.tm_min, - tm_info.tm_sec) != 0) { + tm_info.tm_sec); + if (n < 0 || (size_t)n > (DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1)) { dlt_vlog(LOG_WARNING, "%s: snprintf truncation %s\n", __func__, stamp); } -- cgit v1.2.1