failtest: use ccan/time
authorRusty Russell <rusty@rustcorp.com.au>
Mon, 29 Aug 2011 23:50:39 +0000 (09:20 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Mon, 29 Aug 2011 23:50:39 +0000 (09:20 +0930)
ccan/failtest/_info
ccan/failtest/failtest.c

index 3478a02b66c5bd88f6bcc185792d739afba5f19c..a9189a238fcdb363e3882f93d3333e4200438bb5 100644 (file)
@@ -64,6 +64,7 @@ int main(int argc, char *argv[])
                printf("ccan/compiler\n");
                printf("ccan/read_write_all\n");
                printf("ccan/build_assert\n");
                printf("ccan/compiler\n");
                printf("ccan/read_write_all\n");
                printf("ccan/build_assert\n");
+               printf("ccan/time\n");
                return 0;
        }
 
                return 0;
        }
 
index 224898f9cb75ad8ad782c0dc983ade12c544cc06..bac0aa350ac24378e8af2b949cb0781a7699906a 100644 (file)
@@ -15,6 +15,7 @@
 #include <sys/time.h>
 #include <signal.h>
 #include <assert.h>
 #include <sys/time.h>
 #include <signal.h>
 #include <assert.h>
+#include <ccan/time/time.h>
 #include <ccan/read_write_all/read_write_all.h>
 #include <ccan/failtest/failtest_proto.h>
 #include <ccan/build_assert/build_assert.h>
 #include <ccan/read_write_all/read_write_all.h>
 #include <ccan/failtest/failtest_proto.h>
 #include <ccan/build_assert/build_assert.h>
@@ -457,18 +458,13 @@ static bool should_fail(struct failtest_call *call)
 
        if (child == 0) {
                if (tracefd != -1) {
 
        if (child == 0) {
                if (tracefd != -1) {
-                       struct timeval now;
+                       struct timeval diff;
                        const char *p;
                        const char *p;
-                       gettimeofday(&now, NULL);
-                       if (now.tv_usec < start.tv_usec) {
-                               now.tv_sec--;
-                               now.tv_usec += 1000000;
-                       }
-                       now.tv_usec -= start.tv_usec;
-                       now.tv_sec -= start.tv_sec;
+
+                       diff = time_sub(time_now(), start);
                        p = failpath_string();
                        trace("%u->%u (%u.%02u): %s (", getppid(), getpid(),
                        p = failpath_string();
                        trace("%u->%u (%u.%02u): %s (", getppid(), getpid(),
-                             (int)now.tv_sec, (int)now.tv_usec / 10000, p);
+                             (int)diff.tv_sec, (int)diff.tv_usec / 10000, p);
                        free((char *)p);
                        p = strrchr(history[history_num-1].file, '/');
                        if (p)
                        free((char *)p);
                        p = strrchr(history[history_num-1].file, '/');
                        if (p)
@@ -1067,7 +1063,7 @@ void failtest_init(int argc, char *argv[])
                        debugpath = argv[i] + strlen("--debugpath=");
                }
        }
                        debugpath = argv[i] + strlen("--debugpath=");
                }
        }
-       gettimeofday(&start, NULL);
+       start = time_now();
 }
 
 bool failtest_has_failed(void)
 }
 
 bool failtest_has_failed(void)