Browse Source

fix handling of overly-long TZ environment variable values

the rest of the code is not prepared to handle an empty TZ string, so
falling back to __gmt ("GMT"), just as if TZ had been blank or unset,
is the preferable action.
Rich Felker 11 years ago
parent
commit
1d0d2df609
1 changed files with 1 additions and 1 deletions
  1. 1 1
      src/time/__tz.c

+ 1 - 1
src/time/__tz.c

@@ -138,7 +138,7 @@ static void do_tzset()
 	 * free so as not to pull it into static programs. Growth
 	 * strategy makes it so free would have minimal benefit anyway. */
 	i = strlen(s);
-	if (i > PATH_MAX+1) s = "", i = 0;
+	if (i > PATH_MAX+1) s = __gmt, i = 3;
 	if (i >= old_tz_size) {
 		old_tz_size *= 2;
 		if (i >= old_tz_size) old_tz_size = i+1;