summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--timezone/zic.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 2be9ceba9a..2cb0ed60d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-03-13 Joseph Myers <joseph@codesourcery.com>
+
+ * timezone/zic.c: Update from tzcode 2013b.
+
2013-03-12 Carlos O'Donell <carlos@redhat.com>
* manual/install.texi (Configuring and compiling):
diff --git a/timezone/zic.c b/timezone/zic.c
index a5202a1ac3..91f0d20cc1 100644
--- a/timezone/zic.c
+++ b/timezone/zic.c
@@ -1748,7 +1748,7 @@ stringoffset(char *result, long offset)
minutes = offset % MINSPERHOUR;
offset /= MINSPERHOUR;
hours = offset;
- if (hours >= HOURSPERDAY) {
+ if (hours > HOURSPERDAY) {
result[0] = '\0';
return -1;
}
@@ -1851,7 +1851,9 @@ stringzone(char *result, const struct zone *const zpfirst, const int zonecount)
rp = &zp->z_rules[i];
if (stdrp == NULL || rp->r_hiyear > stdrp->r_hiyear ||
(rp->r_hiyear == stdrp->r_hiyear &&
- rp->r_month > stdrp->r_month))
+ (rp->r_month > stdrp->r_month ||
+ (rp->r_month == stdrp->r_month &&
+ rp->r_dayofmonth > stdrp->r_dayofmonth))))
stdrp = rp;
}
if (stdrp != NULL && stdrp->r_stdoff != 0)