{
int hour, min, sec, day, month;
time_t now;
- struct tm *local;
+ struct tm local;
time(&now);
- local = localtime(&now);
+ if (localtime_r(&now, &local) == NULL) {
+ __print_error("localtime_r() fails");
+ return;
+ }
- hour = local->tm_hour;
- min = local->tm_min;
- sec = local->tm_sec;
- day = local->tm_mday;
- month = local->tm_mon + 1;
+ hour = local.tm_hour;
+ min = local.tm_min;
+ sec = local.tm_sec;
+ day = local.tm_mday;
+ month = local.tm_mon + 1;
snprintf(buf, VINE_LOGGER_TIME_MESSAGE_LEN,
"[%02u-%02u %02u:%02u:%02u]", month, day, hour, min, sec);