=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/calendar/day.c,v retrieving revision 1.32 retrieving revision 1.36 diff -u -r1.32 -r1.36 --- src/usr.bin/calendar/day.c 2015/12/08 19:04:50 1.32 +++ src/usr.bin/calendar/day.c 2019/02/01 16:22:53 1.36 @@ -1,4 +1,4 @@ -/* $OpenBSD: day.c,v 1.32 2015/12/08 19:04:50 mmcc Exp $ */ +/* $OpenBSD: day.c,v 1.36 2019/02/01 16:22:53 millert Exp $ */ /* * Copyright (c) 1989, 1993, 1994 @@ -166,7 +166,7 @@ cumdays = daytab[0]; /* Friday displays Monday's events */ offset = tp->tm_wday == 5 ? 3 : 1; - if (f_SetdayAfter) + if (f_Setday) offset = 0; /* Except not when range is set explicitly */ header[5].iov_base = dayname; @@ -543,8 +543,11 @@ tdiff = difftime(ttmp, f_time)/ SECSPERDAY; if (tdiff <= offset + f_dayAfter || (bodun && tdiff == -1)) { - if (tdiff >= 0 || - (bodun && tdiff == -1)) { + if (((tmtmp.tm_mon == month) || + (flags & F_SPECIAL) || + (interval == WEEKLY)) && + (tdiff >= 0 || + (bodun && tdiff == -1))) { if ((tmp = malloc(sizeof(struct match))) == NULL) err(1, NULL); tmp->when = ttmp;