about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-01-14 17:26:59 +0000
committerEric Wong <normalperson@yhbt.net>2011-01-14 17:26:59 +0000
commitb48017f818e13f8c7ddb555f8fe5fa895521af7a (patch)
tree63ab6beb1dd9050a7ac3997cb1a73a331c51b1e5
parentcc43cfbb418ab7b4b2786123d33ede23b3cb5ea3 (diff)
Fix a reversed typedef and also deal with the case where
CLOCK_MONOTONIC is a function call and not a constant
macro.
-rw-r--r--ext/clogger_ext/broken_system_compat.h2
-rw-r--r--ext/clogger_ext/clogger.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/ext/clogger_ext/broken_system_compat.h b/ext/clogger_ext/broken_system_compat.h
index ec635b1..632612b 100644
--- a/ext/clogger_ext/broken_system_compat.h
+++ b/ext/clogger_ext/broken_system_compat.h
@@ -4,7 +4,7 @@
  */
 
 #ifndef HAVE_TYPE_CLOCKID_T
-typedef clockid_t int;
+typedef int clockid_t;
 #endif
 
 #ifndef HAVE_CLOCK_GETTIME
diff --git a/ext/clogger_ext/clogger.c b/ext/clogger_ext/clogger.c
index 604b9b6..d96b046 100644
--- a/ext/clogger_ext/clogger.c
+++ b/ext/clogger_ext/clogger.c
@@ -25,12 +25,14 @@
  * since we could've been built on a different system than we're run
  * under.
  */
-static clockid_t hopefully_CLOCK_MONOTONIC = CLOCK_MONOTONIC;
+static clockid_t hopefully_CLOCK_MONOTONIC;
 
 static void check_clock(void)
 {
         struct timespec now;
 
+        hopefully_CLOCK_MONOTONIC = CLOCK_MONOTONIC;
+
         /* we can't check this reliably at compile time */
         if (clock_gettime(CLOCK_MONOTONIC, &now) == 0)
                 return;