changeset 1203:6b99a5b076a6 HEAD

Check gettimeofday() failures
author Timo Sirainen <tss@iki.fi>
date Wed, 19 Feb 2003 23:24:05 +0200
parents 2d14be5b6829
children db5958ba1c32
files src/lib/ioloop.c
diffstat 1 files changed, 12 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/ioloop.c	Wed Feb 19 22:26:12 2003 +0200
+++ b/src/lib/ioloop.c	Wed Feb 19 23:24:05 2003 +0200
@@ -162,9 +162,10 @@
 
 static void timeout_update_next(struct timeout *timeout, struct timeval *tv_now)
 {
-        if (tv_now == NULL)
-		gettimeofday(&timeout->next_run, NULL);
-	else {
+	if (tv_now == NULL) {
+		if (gettimeofday(&timeout->next_run, NULL) < 0)
+			i_fatal("gettimeofday(): %m");
+	} else {
                 timeout->next_run.tv_sec = tv_now->tv_sec;
                 timeout->next_run.tv_usec = tv_now->tv_usec;
 	}
@@ -225,9 +226,10 @@
 	if (timeout == NULL)
 		return INT_MAX;
 
-	if (tv_now == NULL)
-		gettimeofday(tv, NULL);
-	else {
+	if (tv_now == NULL) {
+		if (gettimeofday(tv, NULL) < 0)
+			i_fatal("gettimeofday(): %m");
+	} else {
 		tv->tv_sec = tv_now->tv_sec;
 		tv->tv_usec = tv_now->tv_usec;
 	}
@@ -254,7 +256,8 @@
 	struct timeval tv;
         unsigned int t_id;
 
-	gettimeofday(&ioloop_timeval, &ioloop_timezone);
+	if (gettimeofday(&ioloop_timeval, &ioloop_timezone) < 0)
+		i_fatal("gettimeofday(): %m");
 	ioloop_time = ioloop_timeval.tv_sec;
 
 	if (ioloop->timeouts == NULL || !ioloop->timeouts->run_now)
@@ -312,7 +315,8 @@
 	struct ioloop *ioloop;
 
 	/* initialize time */
-	gettimeofday(&ioloop_timeval, &ioloop_timezone);
+	if (gettimeofday(&ioloop_timeval, &ioloop_timezone) < 0)
+		i_fatal("gettimeofday(): %m");
 	ioloop_time = ioloop_timeval.tv_sec;
 
         ioloop = p_new(pool, struct ioloop, 1);