提交 190bbb99 编写于 作者: R Rich Felker

properly fill in tzname[] for old (pre-64-bit-format) zoneinfo files

in this case, the first standard-time and first daylight-time rules
should be taken as the "default" ones to expose.
上级 32985d4f
......@@ -190,7 +190,28 @@ static void do_tzset()
for (s = (const char *)zi+map_size-2; *s!='\n'; s--);
s++;
} else {
s = 0;
const unsigned char *p;
__tzname[0] = __tzname[1] = 0;
__daylight = __timezone = dst_off = 0;
for (i=0; i<5; i++) r0[i] = r1[i] = 0;
for (p=types; p<abbrevs; p+=6) {
if (!p[4] && !__tzname[0]) {
__tzname[0] = (char *)abbrevs + p[5];
__timezone = -zi_read32(p);
}
if (p[4] && !__tzname[1]) {
__tzname[1] = (char *)abbrevs + p[5];
dst_off = -zi_read32(p);
__daylight = 1;
}
}
if (!__tzname[0]) __tzname[0] = __tzname[1];
if (!__tzname[0]) __tzname[0] = (char *)__gmt;
if (!__daylight) {
__tzname[1] = __tzname[0];
dst_off = __timezone;
}
return;
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册