--- heirloom-ng-clean/date/date.c	2024-12-12 19:06:27.342195016 +0300
+++ heirloom-ng/date/date.c	2024-12-12 16:52:25.306354399 +0300
@@ -132,6 +132,7 @@
 settime(char *op)
 {
 	struct utmpx before, after;
+	struct timeval tv_tmp;
 	const char wtmpxfile[] = "/var/log/wtmp";
 	time_t newtime;
 
@@ -143,12 +144,16 @@
 	strcpy(after.ut_line, "new time");
 	if ((newtime = timeop(op)) == (time_t)-1)
 		badconv();
-	gettimeofday(&before.ut_tv, NULL);
+	gettimeofday(&tv_tmp, NULL);
+	before.ut_tv.tv_sec = tv_tmp.tv_sec;
+	before.ut_tv.tv_usec = tv_tmp.tv_usec;
 	if (stime(&newtime) < 0) {
 		fprintf(stderr, "%s: no permission\n", progname);
 		exit(1);
 	}
-	gettimeofday(&after.ut_tv, NULL);
+	gettimeofday(&tv_tmp, NULL);
+	after.ut_tv.tv_sec = tv_tmp.tv_sec;
+	after.ut_tv.tv_usec = tv_tmp.tv_usec;
 #ifdef	__linux__
 	system("/sbin/hwclock -w >/dev/null 2>&1");
 #endif	/* __linux__ */
