diff options
author | Jim Meyering <jim@meyering.net> | 1996-03-06 04:57:01 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 1996-03-06 04:57:01 +0000 |
commit | e131b14fc24aa47678980b700a4284c4c138ffbf (patch) | |
tree | 6a466418ebef12d72fd9b77b5261d973047f076a | |
parent | 3e917adcef77a9de15ccaa181f3aff34e84879a5 (diff) | |
download | gnulib-e131b14fc24aa47678980b700a4284c4c138ffbf.tar.gz |
(RelativeMonth): Add 1900 to the year so that relative date specs
that push the year through the end of the century work. For example,
`date -d "01/01/1998 3 years" +%Y' now prints 2001.
From Peter Dalgaard (pd@kubism.ku.dk).
-rw-r--r-- | lib/getdate.y | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/getdate.y b/lib/getdate.y index ce119056a1..a1b8ee80db 100644 --- a/lib/getdate.y +++ b/lib/getdate.y @@ -682,7 +682,7 @@ RelativeMonth (Start, RelMonth) if (RelMonth == 0) return 0; tm = localtime (&Start); - Month = 12 * tm->tm_year + tm->tm_mon + RelMonth; + Month = 12 * (1900 + tm->tm_year) + tm->tm_mon + RelMonth; Year = Month / 12; Month = Month % 12 + 1; return DSTcorrect (Start, @@ -745,7 +745,7 @@ LookupWord (buff) return tp->type; } - if (strcmp (buff, "dst") == 0) + if (strcmp (buff, "dst") == 0) return tDST; for (tp = UnitsTable; tp->name; tp++) @@ -896,7 +896,7 @@ get_date (p, now) if (! (tm = localtime (&ftz.time))) return -1; - + ftz.timezone = difftm (&gmt, tm) / 60; if (tm->tm_isdst) ftz.timezone += 60; |