about summary refs log tree commit diff
path: root/timezone/zic.c
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-03-13 01:54:00 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-03-13 01:54:00 +0000
commit54206aa6a2729c0bfe10321c6d74c441bef36223 (patch)
tree3b6aa867049faa0ca6386c534e2314d08e5c74c8 /timezone/zic.c
parente98cdb38ee2dfd6ea9dc0fc07b5fa56421387964 (diff)
downloadglibc-54206aa6a2729c0bfe10321c6d74c441bef36223.tar.gz
glibc-54206aa6a2729c0bfe10321c6d74c441bef36223.tar.xz
glibc-54206aa6a2729c0bfe10321c6d74c441bef36223.zip
Update zic from tzcode 2013b.
Diffstat (limited to 'timezone/zic.c')
-rw-r--r--timezone/zic.c6
1 files changed, 4 insertions, 2 deletions
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)