From e91c375fd027a485bd7415afbaf059d429e11e11 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sun, 24 Jul 2011 01:10:01 -0400 Subject: [PATCH] workaround for gcc's optimizer breaking dynamic symbol resolution --- src/time/clock_gettime.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/time/clock_gettime.c b/src/time/clock_gettime.c index bb977e28..9fef54a4 100644 --- a/src/time/clock_gettime.c +++ b/src/time/clock_gettime.c @@ -5,7 +5,7 @@ #include "libc.h" int __vdso_clock_gettime(clockid_t, struct timespec *) __attribute__((weak)); -static int (*const cgt)(clockid_t, struct timespec *) = __vdso_clock_gettime; +static int (*cgt)(clockid_t, struct timespec *) = __vdso_clock_gettime; int __clock_gettime(clockid_t clk, struct timespec *ts) { @@ -14,6 +14,7 @@ int __clock_gettime(clockid_t clk, struct timespec *ts) r = __syscall(SYS_clock_gettime, clk, ts); if (!r) return r; if (r == -ENOSYS) { + cgt = 0; if (clk == CLOCK_REALTIME) { __syscall(SYS_gettimeofday, clk, ts, 0); ts->tv_nsec = (int)ts->tv_nsec * 1000;