On 06/30 04:48, Ted Unangst wrote: > On Thu, Jun 30, 2011, Jeremy Evans wrote: > > > Regress tests have one failure on both amd64 and i386, a segfault in a > > gmtime call: > > > > Not sure if that's a bug in the test code or a bug in our gmtime > > implementation, though. Simple testing with a ruby application using > > rack-mongrel2 shows no errors. > > Ah, this shit again. See history for libc/time/localtime.c. I fixed > exactly this bug (guess how I found it :)), but it got lost in the > timezone update. They appear to have worked this file over harder than > I did to avoid stack data, but they made it optional and not enabled by > default. Maybe the patch below is all that's needed?
With this patch, all regress tests pass. Thanks for the quick feedback. Jeremy > > Index: localtime.c > =================================================================== > RCS file: /home/tedu/cvs/src/lib/libc/time/localtime.c,v > retrieving revision 1.37 > diff -u -r1.37 localtime.c > --- localtime.c 25 Apr 2011 13:27:27 -0000 1.37 > +++ localtime.c 30 Jun 2011 20:45:03 -0000 > @@ -17,6 +17,8 @@ > #include "float.h" /* for FLT_MAX and DBL_MAX */ > #include "thread_private.h" > > +#define ALL_STATE > + > #ifndef TZ_ABBR_MAX_LEN > #define TZ_ABBR_MAX_LEN 16 > #endif /* !defined TZ_ABBR_MAX_LEN */
