Download raw body.
Hi,
On Wed, Apr 01, 2026 at 10:41:28PM +0200, Alvar Penning wrote:
> diff --git a/newsyslog.c b/newsyslog.c
> index 0be4ed259b9..d4a62194ab3 100644
> --- a/newsyslog.c
> +++ b/newsyslog.c
> @@ -1251,12 +1251,12 @@ parseDWM(char *s)
>
> nd = mtab[tm.tm_mon];
>
> - if (tm.tm_mon == 1) {
> - if (((tm.tm_year + 1900) % 4 == 0) &&
> - ((tm.tm_year + 1900) % 100 != 0) &&
> - ((tm.tm_year + 1900) % 400 == 0)) {
> - nd++; /* leap year, 29 days in february */
> - }
> + /* leap year, 29 days in february */
> + if ((tm.tm_mon == 1) && ((tm.tm_year + 1900) % 4 == 0)) {
> + if ((tm.tm_year + 1900) % 100 != 0)
> + nd++; /* divisible by 4, not divisible by 100 */
> + else if ((tm.tm_year + 1900) % 400 == 0)
> + nd++; /* divisible by 4, 100 and 400 */
> }
> tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
While this looks correct to me, wouldn't something like this be
better?
--- newsyslog.c Tue Sep 23 08:09:56 2025
+++ newsyslog.c.new Wed Apr 1 23:28:07 2026
@@ -1253,8 +1253,8 @@
if (tm.tm_mon == 1) {
if (((tm.tm_year + 1900) % 4 == 0) &&
- ((tm.tm_year + 1900) % 100 != 0) &&
- ((tm.tm_year + 1900) % 400 == 0)) {
+ (((tm.tm_year + 1900) % 100 != 0) ||
+ ((tm.tm_year + 1900) % 400 == 0))) {
nd++; /* leap year, 29 days in february */
}
}
Ciao,
Kili