From c560d0e2de75a68971ce6a3f2a06efe731f32396 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Tue, 2 Jun 2026 07:29:37 +0200 Subject: [PATCH] WAYLAND_DEBUG: produce comparable timestamp values Instead of just not bothering with overflow, keep the last 4 digits of unix time. This makes the numbers comparable with other logs that produce timestamp, in particular the syslog. Signed-off-by: Benjamin Otte --- src/connection.c | 6 +++--- src/wayland-client.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/connection.c b/src/connection.c index 2d1e8d1d..c0f74288 100644 --- a/src/connection.c +++ b/src/connection.c @@ -1547,7 +1547,7 @@ wl_closure_print(struct wl_closure *closure, struct wl_object *target, struct argument_details arg; const char *signature = closure->message->signature; struct timespec tp; - unsigned int time; + uint64_t time; uint32_t nval; FILE *f; char *buffer; @@ -1558,10 +1558,10 @@ wl_closure_print(struct wl_closure *closure, struct wl_object *target, return; clock_gettime(CLOCK_REALTIME, &tp); - time = (tp.tv_sec * 1000000L) + (tp.tv_nsec / 1000); + time = ((tp.tv_sec % 10000L) * 1000000L) + (tp.tv_nsec / 1000); fprintf(f, "%s[%7u.%03u] ", color ? WL_DEBUG_COLOR_GREEN : "", - time / 1000, time % 1000); + (unsigned) (time / 1000), (unsigned) (time % 1000)); #if defined(HAVE_GETTID) if (include_tid < 0) { diff --git a/src/wayland-client.c b/src/wayland-client.c index 50b3b4b2..3f3f4ddf 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -1577,7 +1577,7 @@ queue_event(struct wl_display *display, int len) const struct wl_message *message; struct wl_event_queue *queue; struct timespec tp; - unsigned int time; + uint64_t time; int num_zombie_fds; wl_connection_copy(display->connection, p, sizeof p); @@ -1619,11 +1619,11 @@ queue_event(struct wl_display *display, int len) if (debug_client) { clock_gettime(CLOCK_REALTIME, &tp); - time = (tp.tv_sec * 1000000L) + (tp.tv_nsec / 1000); + time = ((tp.tv_sec % 10000L) * 1000000L) + (tp.tv_nsec / 1000); fprintf(stderr, "%s[%7u.%03u] %sdiscarded %s[%s]%s#%u%s.[event %d]%s" "(%d fd, %d byte)\n", debug_color ? WL_DEBUG_COLOR_GREEN : "", - time / 1000, time % 1000, + (unsigned) (time / 1000), (unsigned) (time % 1000), debug_color ? WL_DEBUG_COLOR_RED : "", debug_color ? WL_DEBUG_COLOR_BLUE : "", zombie ? "zombie" : "unknown",