---- time.c.orig 2004-11-25 11:38:01.000000000 -0800
-+++ time.c 2005-03-24 14:09:30.000000000 -0800
-@@ -39,6 +39,7 @@
+--- time.c.orig 2009-11-07 14:51:38.000000000 -0800
++++ time.c 2009-11-07 14:51:40.000000000 -0800
+@@ -35,6 +35,7 @@ __FBSDID("$FreeBSD: src/lib/libc/gen/tim
#include <sys/types.h>
#include <sys/time.h>
time_t
time(t)
-@@ -46,12 +47,15 @@
+@@ -42,12 +43,21 @@ time(t)
{
struct timeval tt;
time_t retval;
++#ifdef FE_DFL_ENV
+ fenv_t fenv;
++#endif /* FE_DFL_ENV */
++#ifdef FE_DFL_ENV
+ fegetenv(&fenv); /* 3965505 - need to preserve floating point enviroment */
++#endif /* FE_DFL_ENV */
if (gettimeofday(&tt, (struct timezone *)0) < 0)
retval = -1;
else
retval = tt.tv_sec;
if (t != NULL)
*t = retval;
++#ifdef FE_DFL_ENV
+ fesetenv(&fenv);
++#endif /* FE_DFL_ENV */
return (retval);
}