summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2015-07-08 10:25:49 +0200
committerCorinna Vinschen <corinna@vinschen.de>2015-07-08 10:25:49 +0200
commitb90a91a61800706ff83c47431658515dda90399c (patch)
treec76336474531dd187c000ec7ad4d6f4df3ff8793
parente6b882b9573d8388199faf856d1707e5d4375e06 (diff)
downloadcygnal-b90a91a61800706ff83c47431658515dda90399c.tar.gz
cygnal-b90a91a61800706ff83c47431658515dda90399c.tar.bz2
cygnal-b90a91a61800706ff83c47431658515dda90399c.zip
tzset: Check timezone and country case-insensitive
* tzset.c (main): Check timezone and country case-insensitive. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
-rw-r--r--winsup/cygwin/release/2.1.04
-rw-r--r--winsup/utils/ChangeLog4
-rw-r--r--winsup/utils/tzset.c4
3 files changed, 10 insertions, 2 deletions
diff --git a/winsup/cygwin/release/2.1.0 b/winsup/cygwin/release/2.1.0
index aca69cdf3..1b9e19f97 100644
--- a/winsup/cygwin/release/2.1.0
+++ b/winsup/cygwin/release/2.1.0
@@ -33,3 +33,7 @@ Bug Fixes
Addresses: https://cygwin.com/ml/cygwin/2015-06/msg00384.html
- Fix a crash on 64 bit XP/2003 when opening /proc/$PID/maps.
+
+- Apparently on some Windows systems timezones differ in case
+ from the standard. Fix the tzset tool to check case-insensitive.
+ Addresses: https://cygwin.com/ml/cygwin/2015-07/msg00113.html
diff --git a/winsup/utils/ChangeLog b/winsup/utils/ChangeLog
index 5a68a40cd..db6049bb1 100644
--- a/winsup/utils/ChangeLog
+++ b/winsup/utils/ChangeLog
@@ -1,3 +1,7 @@
+2015-07-08 Corinna Vinschen <corinna@vinschen.de>
+
+ * tzset.c (main): Check timezone and country case-insensitive.
+
2015-06-07 Jon Turney <jon.turney@dronecode.org.uk>
* strace.cc (proc_child): Log process and thread create and exit,
diff --git a/winsup/utils/tzset.c b/winsup/utils/tzset.c
index 2b3f413be..0e22f44df 100644
--- a/winsup/utils/tzset.c
+++ b/winsup/utils/tzset.c
@@ -207,11 +207,11 @@ main (int argc, char **argv)
/* Now iterate over the mapping table and find the right entry. */
for (idx = 0; idx < TZMAP_SIZE; ++idx)
{
- if (!wcscmp (keyname, tzmap[idx].win_tzkey))
+ if (!wcscasecmp (keyname, tzmap[idx].win_tzkey))
{
if (gotit < 0)
gotit = idx;
- if (!wcscmp (country, tzmap[idx].country))
+ if (!wcscasecmp (country, tzmap[idx].country))
break;
}
else if (gotit >= 0)