cvs commit: projects/csup keyword.c misc.c misc.h
Maxime Henrion
mux at FreeBSD.org
Thu Mar 2 09:40:05 PST 2006
mux 2006-03-02 17:40:04 UTC
FreeBSD projects repository
Modified files:
csup keyword.c misc.c misc.h
Log:
- Subtle differences in the strptime() implementation of NetBSD caused
csup to fail there. The problem was that strptime() won't fail if we
use the %Y format and that the year is only 2 digits on NetBSD, and
it fails on FreeBSD. My code was only using the %y format when the %Y
one failed, so under NetBSD it was not used and timegm() was called
with a wrong structure, and was returning -1. In order to work around
this problem, we're looking for the first '.' in the revdate in first,
and we're using %Y or %y depending on the length of the first field.
- So that we don't duplicate this logic in keyword.c, introduce a new
function named rcsdatetotm() that will parse a RCS revdate and put it
into a struct tm. Reimplement rcsdatetotime() in terms of rcsdatetotm()
and timegm().
- Use the new rcsdatetotm() in keyword.c.
Revision Changes Path
1.32 +5 -6 projects/csup/keyword.c
1.28 +26 -7 projects/csup/misc.c
1.25 +4 -2 projects/csup/misc.h
More information about the cvs-all
mailing list