Browse Source

Make sure initialized_at is initialized before use.

Nick Mathewson 7 years ago
parent
commit
6ba415d400
1 changed files with 8 additions and 0 deletions
  1. 8 0
      src/common/compat_time.c

+ 8 - 0
src/common/compat_time.c

@@ -466,6 +466,10 @@ uint64_t
 monotime_absolute_nsec(void)
 {
   monotime_t now;
+  if (BUG(monotime_initialized == 0)) {
+    monotime_init();
+  }
+
   monotime_get(&now);
   return monotime_diff_nsec(&initialized_at, &now);
 }
@@ -486,6 +490,10 @@ monotime_absolute_msec(void)
 uint64_t
 monotime_coarse_absolute_nsec(void)
 {
+  if (BUG(monotime_initialized == 0)) {
+    monotime_init();
+  }
+
   monotime_coarse_t now;
   monotime_coarse_get(&now);
   return monotime_coarse_diff_nsec(&initialized_at_coarse, &now);