* include/grub/datetime.h (grub_datetime2unixtime): Fix offset.
This commit is contained in:
		
							parent
							
								
									b4bf7c3b20
								
							
						
					
					
						commit
						b1ac4cb1f9
					
				
					 2 changed files with 9 additions and 5 deletions
				
			
		|  | @ -1,3 +1,7 @@ | |||
| 2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com> | ||||
| 
 | ||||
| 	* include/grub/datetime.h (grub_datetime2unixtime): Fix offset. | ||||
| 
 | ||||
| 2012-01-14  Vladimir Serbinenko  <phcoder@gmail.com> | ||||
| 
 | ||||
| 	* grub-core/lib/posix_wrap/stdlib.h (MB_CUR_MAX): Moved from here ... | ||||
|  |  | |||
|  | @ -85,14 +85,14 @@ grub_datetime2unixtime (const struct grub_datetime *datetime, grub_int32_t *nix) | |||
|   /* In the period of validity of unixtime all years divisible by 4
 | ||||
|      are bissextile*/ | ||||
|   /* Convenience: let's have 3 consecutive non-bissextile years
 | ||||
|      at the beginning of the epoch. So count from 1971 instead of 1970 */ | ||||
|   ret = 2 * SECPERYEAR + SECPERDAY; | ||||
|      at the beginning of the epoch. So count from 1973 instead of 1970 */ | ||||
|   ret = 3 * SECPERYEAR + SECPERDAY; | ||||
| 
 | ||||
|   /* Transform C divisions and modulos to mathematical ones */ | ||||
|   y4 = (datetime->year - 1972) / 4; | ||||
|   if (datetime->year < 1972) | ||||
|   y4 = (datetime->year - 1973) / 4; | ||||
|   if (datetime->year < 1973) | ||||
|     y4--; | ||||
|   ay = datetime->year - 1972 - 4 * y4; | ||||
|   ay = datetime->year - 1973 - 4 * y4; | ||||
|   ret += y4 * SECPER4YEARS; | ||||
|   ret += ay * SECPERYEAR; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue