[dovecot-cvs] dovecot/src/lib ioloop.c,1.13,1.14

cras at procontrol.fi cras at procontrol.fi
Wed Feb 19 23:24:07 EET 2003


Update of /home/cvs/dovecot/src/lib
In directory danu:/tmp/cvs-serv30976/lib

Modified Files:
	ioloop.c 
Log Message:
Check gettimeofday() failures



Index: ioloop.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib/ioloop.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- ioloop.c	14 Feb 2003 10:45:34 -0000	1.13
+++ ioloop.c	19 Feb 2003 21:24:05 -0000	1.14
@@ -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);




More information about the dovecot-cvs mailing list