Index: src/msticker.c
===================================================================
--- src/msticker.c	(revision 1283)
+++ src/msticker.c	(revision 1305)
@@ -236,5 +236,5 @@
 	struct timeval tv;
 	gettimeofday(&tv, NULL);
-	return (tv.tv_sec*1000LL) + (tv.tv_usec/1000LL);
+	return (tv.tv_sec*1000LL) + ((tv.tv_usec+500LL)/1000LL);
 #elif defined(__MACH__)
 	struct timespec ts;
@@ -244,5 +244,5 @@
 	ts.tv_sec = time_val.time;
 	ts.tv_nsec = time_val.millitm * 1000000;
-	return (ts.tv_sec*1000LL) + (ts.tv_nsec/1000000LL);
+	return (ts.tv_sec*1000LL) + ((ts.tv_nsec+500000LL)/1000000LL);
 #else
 	struct timespec ts;
@@ -250,5 +250,5 @@
 		ms_fatal("clock_gettime() doesn't work: %s",strerror(errno));
 	}
-	return (ts.tv_sec*1000LL) + (ts.tv_nsec/1000000LL);
+	return (ts.tv_sec*1000LL) + ((ts.tv_nsec+500000LL)/1000000LL);
 #endif
 }
