--- /home/jeremy/tcl8.4.4/win/tclWinTime.c	Sat May 10 15:42:26 2003
+++ tcl8.4.4/win/tclWinTime.c	Wed Aug 13 11:52:52 2003
@@ -465,6 +465,8 @@
     Tcl_Encoding encoding;
     ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
     char *name = tsdPtr->tzName;
+    WCHAR *abbr;
+    int a, b;
 
     /*
      * tzset() under Borland doesn't seem to set up tzname[] at all.
@@ -517,9 +519,18 @@
 	     */
 	    dst = 0;
 	}
+	if (dst)
+		abbr=tz.DaylightName;
+	else
+		abbr=tz.StandardName;
+	for(a=0,b=0;abbr[a]&&a<32;a++) {
+		if (iswupper(abbr[a]))
+			abbr[b++]=abbr[a];
+	}
+	abbr[b]=0;
 	encoding = Tcl_GetEncoding(NULL, "unicode");
 	Tcl_ExternalToUtf(NULL, encoding, 
-		(char *) ((dst) ? tz.DaylightName : tz.StandardName), -1, 
+		(char *)abbr, -1, 
 		0, NULL, name, sizeof(tsdPtr->tzName), NULL, NULL, NULL);
 	Tcl_FreeEncoding(encoding);
     } 
