Formerly ../time/__tzset.c.~20~
authorroland <roland>
Mon, 21 Jun 1993 23:47:15 +0000 (23:47 +0000)
committerroland <roland>
Mon, 21 Jun 1993 23:47:15 +0000 (23:47 +0000)
time/tzset.c

index 8bc0469..5b0377a 100644 (file)
@@ -424,6 +424,11 @@ DEFUN(compute_change, (rule, year), tz_rule *rule AND int year)
 }
 
 
 }
 
 
+/* Maximum length of a timezone name.  __tz_compute keeps this up to date
+   (never decreasing it) when ! __use_tzfile.
+   tzfile.c keeps it up to date when __use_tzfile.  */
+long int __tzname_max;
+
 /* Figure out the correct timezone for *TIMER and TM (which must be the same)
    and set `__tzname', `__timezone', and `__daylight' accordingly.
    Return nonzero on success, zero on failure.  */
 /* Figure out the correct timezone for *TIMER and TM (which must be the same)
    and set `__tzname', `__timezone', and `__daylight' accordingly.
    Return nonzero on success, zero on failure.  */
@@ -443,13 +448,15 @@ DEFUN(__tz_compute, (timer, tm),
   __tzname[0] = (char *) tz_rules[0].name;
   __tzname[1] = (char *) tz_rules[1].name;
 
   __tzname[0] = (char *) tz_rules[0].name;
   __tzname[1] = (char *) tz_rules[1].name;
 
-  return 1;
-}
-
+  {
+    /* Keep __tzname_max up to date.  */
+    size_t len0 = strlen (__tzname[0]);
+    size_t len1 = strlen (__tzname[1]);
+    if (len0 > __tzname_max)
+      __tzname_max = len0;
+    if (len1 > __tzname_max)
+      __tzname_max = len1;
+  }
 
 
-long int
-DEFUN_VOID (__tzname_max)
-{
-  size_t len0 = strlen (__tzname[0]), len1 = strlen (__tzname[1]);
-  return len0 > len1 ? len0 : len1;
+  return 1;
 }
 }