lwsl stderr sink use formatted time
AG change to use localtime_r for threadsafety and leave old method as fallback
This commit is contained in:
parent
0a3d31b8a6
commit
57a1df4c88
1 changed files with 16 additions and 4 deletions
|
@ -922,18 +922,30 @@ lws_ensure_user_space(struct lws *wsi)
|
|||
|
||||
LWS_VISIBLE void lwsl_emit_stderr(int level, const char *line)
|
||||
{
|
||||
time_t o_now = time(NULL);
|
||||
struct tm o_now_time;
|
||||
unsigned long long now;
|
||||
char buf[300];
|
||||
int n;
|
||||
int n, ok = localtime_r(&o_now, &o_now_time) != NULL;
|
||||
|
||||
buf[0] = '\0';
|
||||
for (n = 0; n < LLL_COUNT; n++) {
|
||||
if (level != (1 << n))
|
||||
continue;
|
||||
now = time_in_microseconds() / 100;
|
||||
sprintf(buf, "[%llu:%04d] %s: ",
|
||||
(unsigned long long) now / 10000,
|
||||
(int)(now % 10000), log_level_names[n]);
|
||||
if (ok)
|
||||
sprintf(buf, "[%04d/%02d/%02d %02d:%02d:%02d:%04d] %s: ",
|
||||
o_now_time.tm_year + 1900,
|
||||
o_now_time.tm_mon,
|
||||
o_now_time.tm_mday,
|
||||
o_now_time.tm_hour,
|
||||
o_now_time.tm_min,
|
||||
o_now_time.tm_sec,
|
||||
(int)(now % 10000), log_level_names[n]);
|
||||
else
|
||||
sprintf(buf, "[%llu:%04d] %s: ",
|
||||
(unsigned long long) now / 10000,
|
||||
(int)(now % 10000), log_level_names[n]);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue