Просмотр исходного кода

fix mishandling of empty or blank TZ environment variable

the empty TZ string was matching equal to the initial value of the
cached TZ name, thus causing do_tzset never to run and never to
initialize the time zone data.
Rich Felker 11 лет назад
Родитель
Сommit
bd5ed22c58
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      src/time/__tz.c

+ 1 - 1
src/time/__tz.c

@@ -127,7 +127,7 @@ static void do_tzset()
 		"/usr/share/zoneinfo/\0/share/zoneinfo/\0/etc/zoneinfo/\0";
 
 	s = getenv("TZ");
-	if (!s) s = "";
+	if (!s || !*s) s = "GMT0";
 
 	if (old_tz && !strcmp(s, old_tz)) return;