diff --git a/src/sbbs3/data.cpp b/src/sbbs3/data.cpp
index 2271f09299977a4620efc4712d91e731ee367e20..18a8218540989d8a9cdd1d85283de4845704676c 100644
--- a/src/sbbs3/data.cpp
+++ b/src/sbbs3/data.cpp
@@ -129,7 +129,7 @@ extern "C" time_t getnexteventtime(event_t* event)
 		if(localtime_r(&t, &tm) == NULL)
 			return 0;
 		if((event->days & (1 << tm.tm_wday))
-			&& (event->mdays == 0 || (event->mdays & (1 << tm.tm_mday)))
+			&& (event->mdays <= 1 || (event->mdays & (1 << tm.tm_mday)))
 			&& (event->months == 0 || (event->months & (1 << tm.tm_mon))))
 			break;
 		t += 24 * 60 * 60;