daylight-saving time in Egypt; problem with zic and `24:00'

Olson, Arthur David (NCI) olsona at dc37a.nci.nih.gov
Tue Sep 29 03:15:48 UTC 1998


	...unfortunately, `zic' does not let you enter the
	transition time `24:00', meaning midnight at the end of the day; it
	complains `invalid time of day'.  `zic' should probably be enhanced to
	allow 24:00, as that is often what the rules actually say -- Egypt is
	an example of this....

Here's a proposed patch for zic.c to explicitly allow 24:00 (or 24:00:00);
certainly if it gets used in data files such as "africa", a comment about
the potential need for downloading a new time zone compiler might be placed
near the scene of the crime.

				--ado

*** 7.94/zic.c	Mon Sep 28 23:11:25 1998
--- 7.95/zic.c	Mon Sep 28 23:11:26 1998
***************
*** 1,6 ****
  #ifndef lint
  #ifndef NOID
! static char	elsieid[] = "@(#)zic.c	7.94";
  #endif /* !defined NOID */
  #endif /* !defined lint */
  
--- 1,6 ----
  #ifndef lint
  #ifndef NOID
! static char	elsieid[] = "@(#)zic.c	7.95";
  #endif /* !defined NOID */
  #endif /* !defined lint */
  
***************
*** 901,909 ****
  			error(errstring);
  			return 0;
  	}
! 	if (hh < 0 || hh >= HOURSPERDAY ||
  		mm < 0 || mm >= MINSPERHOUR ||
! 		ss < 0 || ss > SECSPERMIN) {
  			error(errstring);
  			return 0;
  	}
--- 901,910 ----
  			error(errstring);
  			return 0;
  	}
! 	if ((hh < 0 || hh >= HOURSPERDAY ||
  		mm < 0 || mm >= MINSPERHOUR ||
! 		ss < 0 || ss > SECSPERMIN) &&
! 		!(hh == HOURSPERDAY && mm == 0 && ss == 0)) {
  			error(errstring);
  			return 0;
  	}





More information about the tz mailing list