From 8a3a1704c7738a49385e1e1a2a5041f50e79f57e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Sun, 25 Nov 2012 19:43:48 +0100 Subject: [PATCH] manager: fix build on 32bit systems --- src/core/manager.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/core/manager.c b/src/core/manager.c index 54600c6bfc9..1ddd8bae624 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -154,7 +154,12 @@ static int manager_setup_time_change(Manager *m) { } zero(its); - its.it_value.tv_sec = 10000000000; /* Year 2287 or so... */ + + /* We only care for the cancellation event, hence we set the + * timeout to the latest possible value. */ + assert_cc(sizeof(time_t) == sizeof(long)); + its.it_value.tv_sec = LONG_MAX; + if (timerfd_settime(m->time_change_watch.fd, TFD_TIMER_ABSTIME|TFD_TIMER_CANCEL_ON_SET, &its, NULL) < 0) { log_debug("Failed to set up TFD_TIMER_CANCEL_ON_SET, ignoring: %m"); close_nointr_nofail(m->time_change_watch.fd);