From 69adf9e32f5b11e15c0cbe17f9331c77fed65bf8 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 28 May 2022 15:50:50 -0700
Subject: [PATCH] Deal with 64bit time_t default on 32bit architectures

Deal with Y2K38 concerns related to Linux input events on more recent
kernels and libcs on 32-bit systems

Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 libsuinput/src/suinput.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/libsuinput/src/suinput.c b/libsuinput/src/suinput.c
index 8d5fb71..13ff16a 100644
--- a/libsuinput/src/suinput.c
+++ b/libsuinput/src/suinput.c
@@ -45,11 +45,20 @@ int suinput_emit(int uinput_fd, uint16_t ev_type, uint16_t ev_code,
         struct input_event event;
 
         memset(&event, 0, sizeof(event));
-        gettimeofday(&event.time, 0);
         event.type = ev_type;
         event.code = ev_code;
         event.value = ev_value;
 
+/* attempt to deal with 64-bit time keeping on recent 32-bit systems */
+#if (__BITS_PER_LONG != 32 || !defined(__USE_TIME_BITS64))
+	gettimeofday(&event.time, 0);
+#else
+        struct timeval now;
+        memset(&now, 0, sizeof(now));
+        gettimeofday(&now, 0);
+        event.input_event_sec  = now.tv_sec;
+        event.input_event_usec = now.tv_usec;
+#endif
         return suinput_write_event(uinput_fd, &event);
 }
 
-- 
2.36.1

