commit 94b7de4

uint  ·  2026-01-30 21:32:07 +0000 UTC
parent f9cd433
make logging thread-safe
1 files changed,  +5, -6
+5, -6
 1@@ -8,16 +8,13 @@
 2 
 3 #include "config.h"
 4 
 5-static inline const char* log_datetime(void)
 6+static inline void log_datetime(char out[20])
 7 {
 8-	static char datetime[20];
 9 	time_t t = time(NULL);
10 	struct tm tmv;
11 
12 	localtime_r(&t, &tmv);
13-	strftime(datetime, sizeof(datetime), "%d/%m/%Y %H:%M:%S", &tmv);
14-
15-	return datetime;
16+	strftime(out, 20, "%d/%m/%Y %H:%M:%S", &tmv);
17 }
18 
19 static inline void log_vprint(bool verbose, const char* tag,
20@@ -29,7 +26,9 @@ static inline void log_vprint(bool verbose, const char* tag,
21 	if (!verbose)
22 		return;
23 
24-	fprintf(stderr, "%s [%s] ", log_datetime(), tag);
25+	char dt[20];
26+	log_datetime(dt);
27+	fprintf(stderr, "%s [%s] ", dt, tag);
28 
29 #if defined(DEBUG)
30 	fprintf(stderr, "[%s : %d : %s()] ", file, line, func);