From ae608e6ec3c940e09fb709847454c3df501defde Mon Sep 17 00:00:00 2001 From: Vincent Povirk Date: Thu, 31 Mar 2011 14:41:00 -0500 Subject: [PATCH] comctl32: Validate the day of month when scrolling through years. --- dlls/comctl32/datetime.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dlls/comctl32/datetime.c b/dlls/comctl32/datetime.c index fd97fdda56e..abfef586605 100644 --- a/dlls/comctl32/datetime.c +++ b/dlls/comctl32/datetime.c @@ -474,6 +474,9 @@ DATETIME_IncreaseField (DATETIME_INFO *infoPtr, int number, int delta) case TWODIGITYEAR: case FULLYEAR: date->wYear = wrap(date->wYear, delta, 1752, 9999); + if (date->wDay > MONTHCAL_MonthLength(date->wMonth, date->wYear)) + /* This can happen when moving away from a leap year. */ + date->wDay = MONTHCAL_MonthLength(date->wMonth, date->wYear); MONTHCAL_CalculateDayOfWeek(date, TRUE); break; case ONEDIGITMONTH: