#701 tclDate.c don´t support CEST

obsolete: 8.0p2
closed-fixed
nobody
2
2001-04-04
2000-10-26
Anonymous
No

OriginalBugID: 1245 Bug
Version: 8.0p2
SubmitDate: '1999-02-22'
LastModified: '1999-09-20'
Severity: SER
Status: Released
Submitter: welch
ChangedBy: hobbs
RelatedBugIDs: 740 784 847 954 1363
OS: Other
OSVersion: FreeBSD 2.2.7 SNAP
Machine: NA
FixedDate: '1999-09-20'
FixedInVersion: 8.2.2
ClosedDate: '2000-10-25'

Name:
Dirk Meyer

CustomShell:
My patch let tcl decode the timezone "CEST" in the command clock scan

ReproducibleScript:

>Environment:

FreeBSD with timezone CET
ln -sf /usr/share/zoneinfo/CET /etc/localtime
tcl8.0 or tcl8.1 installed

ObservedBehavior:
>Description:

FreeBSD set to use TimeZone "CET".
During active daylight-daving-time the name of the timezone
by all date funtions results in "CEST".
I assume this timezone is correct.
If such an date string is parsed by tcl, it will generate
an runtime error.

DesiredBehavior:
>How-To-Repeat:

running an application which try to parse a date/time string.
fist recgnized in port: mail/exmh by reading an message
created with daylight-saving-time on.

I expect the sapomle and exhm to work, calculating the right time.

run the inlcuded example:

# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# test-date.tcl
#
echo x - test-date.tcl
sed 's/^X//' >test-date.tcl << 'END-of-test-date.tcl'
X#!/usr/local/bin/wish
X# Id$: test-date.tcl 1.70 24.01.1999
Xset Out [clock scan "Mon, 28 Jul 97 19:53 GMT" ]
Xputs stdout "GMT $Out"
Xset Out [clock scan "Mon, 28 Jul 97 19:53 MET" ]
Xputs stdout "MET $Out"
Xset Out [clock scan "Mon, 28 Jul 97 19:53 CET" ]
Xputs stdout "CET $Out"
Xset Out [clock scan "Mon, 28 Jul 97 19:53" ]
Xputs stdout "(NO) $Out"
Xset Out [clock scan "Mon, 28 Jul 97 19:53 MEST" ]
Xputs stdout "MEST $Out"
Xset Out [clock scan "Mon, 28 Jul 97 19:53 CEST" ]
Xputs stdout "CEST $Out"
Xexit
END-of-test-date.tcl
exit

Patch:
--- generic/tclDate.c.orig Mon Feb 10 19:03:15 1997
+++ generic/tclDate.c Sun Jan 24 11:31:41 1999
@@ -290,6 +290,7 @@
{ "nt", tZONE, HOUR(11) }, /* Nome */
{ "idlw", tZONE, HOUR(12) }, /* International Date Line West */
{ "cet", tZONE, -HOUR( 1) }, /* Central European */
+ { "cest", tDAYZONE, -HOUR( 1) }, /* Central European Summer */
{ "met", tZONE, -HOUR( 1) }, /* Middle European */
{ "mewt", tZONE, -HOUR( 1) }, /* Middle European Winter */
{ "mest", tDAYZONE, -HOUR( 1) }, /* Middle European Summer */

PatchFiles:
generic/tclDate.c

A followup email says:
There may be a bit more timezones than detected by tcl.

You max look at the source of c-news and finde there a file
libc/dateabstoks.c which does a similar decoding.
There are some more zones detected there, but I lack the
knowledge if there are still in use.
<dirk.meyer@dinoex.sub.org>
--
Added to 8.3b1.
-- 09/20/1999 hobbs

Discussion

  • Brent B. Welch
    Brent B. Welch
    2000-10-26

    • priority: 5 --> 2
    • status: open --> closed-fixed
     
  • Don Porter
    Don Porter
    2001-04-04

    • labels: 104236 --> 06. Time Measurement