Index: fusl/src/time/__year_to_secs.c |
diff --git a/fusl/src/time/__year_to_secs.c b/fusl/src/time/__year_to_secs.c |
index 2824ec6dcc80dc4e328b8aafb5268867b5b67147..4b4d1986828dfb159072bf1a380dd0a2b9d35b05 100644 |
--- a/fusl/src/time/__year_to_secs.c |
+++ b/fusl/src/time/__year_to_secs.c |
@@ -1,47 +1,53 @@ |
-long long __year_to_secs(long long year, int *is_leap) |
-{ |
- if (year-2ULL <= 136) { |
- int y = year; |
- int leaps = (y-68)>>2; |
- if (!((y-68)&3)) { |
- leaps--; |
- if (is_leap) *is_leap = 1; |
- } else if (is_leap) *is_leap = 0; |
- return 31536000*(y-70) + 86400*leaps; |
- } |
+long long __year_to_secs(long long year, int* is_leap) { |
+ if (year - 2ULL <= 136) { |
+ int y = year; |
+ int leaps = (y - 68) >> 2; |
+ if (!((y - 68) & 3)) { |
+ leaps--; |
+ if (is_leap) |
+ *is_leap = 1; |
+ } else if (is_leap) |
+ *is_leap = 0; |
+ return 31536000 * (y - 70) + 86400 * leaps; |
+ } |
- int cycles, centuries, leaps, rem; |
+ int cycles, centuries, leaps, rem; |
- if (!is_leap) is_leap = &(int){0}; |
- cycles = (year-100) / 400; |
- rem = (year-100) % 400; |
- if (rem < 0) { |
- cycles--; |
- rem += 400; |
- } |
- if (!rem) { |
- *is_leap = 1; |
- centuries = 0; |
- leaps = 0; |
- } else { |
- if (rem >= 200) { |
- if (rem >= 300) centuries = 3, rem -= 300; |
- else centuries = 2, rem -= 200; |
- } else { |
- if (rem >= 100) centuries = 1, rem -= 100; |
- else centuries = 0; |
- } |
- if (!rem) { |
- *is_leap = 0; |
- leaps = 0; |
- } else { |
- leaps = rem / 4U; |
- rem %= 4U; |
- *is_leap = !rem; |
- } |
- } |
+ if (!is_leap) |
+ is_leap = &(int){0}; |
+ cycles = (year - 100) / 400; |
+ rem = (year - 100) % 400; |
+ if (rem < 0) { |
+ cycles--; |
+ rem += 400; |
+ } |
+ if (!rem) { |
+ *is_leap = 1; |
+ centuries = 0; |
+ leaps = 0; |
+ } else { |
+ if (rem >= 200) { |
+ if (rem >= 300) |
+ centuries = 3, rem -= 300; |
+ else |
+ centuries = 2, rem -= 200; |
+ } else { |
+ if (rem >= 100) |
+ centuries = 1, rem -= 100; |
+ else |
+ centuries = 0; |
+ } |
+ if (!rem) { |
+ *is_leap = 0; |
+ leaps = 0; |
+ } else { |
+ leaps = rem / 4U; |
+ rem %= 4U; |
+ *is_leap = !rem; |
+ } |
+ } |
- leaps += 97*cycles + 24*centuries - *is_leap; |
+ leaps += 97 * cycles + 24 * centuries - *is_leap; |
- return (year-100) * 31536000LL + leaps * 86400LL + 946684800 + 86400; |
+ return (year - 100) * 31536000LL + leaps * 86400LL + 946684800 + 86400; |
} |