]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
(__tzfile_read): Handle case when there are no transitions.
authorUlrich Drepper <drepper@redhat.com>
Thu, 10 Sep 1998 14:51:41 +0000 (14:51 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 10 Sep 1998 14:51:41 +0000 (14:51 +0000)
time/tzfile.c

index c800d1014895ea3f72914797016ce7ab419132d4..158ffc9f1c41b7afd7491a6f0bb43c34443d1277 100644 (file)
@@ -278,15 +278,21 @@ __tzfile_read (const char *file)
 
   compute_tzname_max (chars);
 
-  rule_stdoff = rule_dstoff = 0;
-  for (i = 0; i < num_transitions; ++i)
+  if (num_transitions == 0)
+    /* Use the first rule (which should also be the only one).  */
+    rule_stdoff = rule_dstoff = types[0].offset;
+  else
     {
-      if (!rule_stdoff && !types[type_idxs[i]].isdst)
-       rule_stdoff = types[type_idxs[i]].offset;
-      if (!rule_dstoff && types[type_idxs[i]].isdst)
-       rule_dstoff = types[type_idxs[i]].offset;
-      if (rule_stdoff && rule_dstoff)
-       break;
+      rule_stdoff = rule_dstoff = 0;
+      for (i = 0; i < num_transitions; ++i)
+       {
+         if (!rule_stdoff && !types[type_idxs[i]].isdst)
+           rule_stdoff = types[type_idxs[i]].offset;
+         if (!rule_dstoff && types[type_idxs[i]].isdst)
+           rule_dstoff = types[type_idxs[i]].offset;
+         if (rule_stdoff && rule_dstoff)
+           break;
+       }
     }
 
   __daylight = rule_stdoff != rule_dstoff;