http://bugs.winehq.org/show_bug.cgi?id=23986
Summary: datetime control SetRange() has no effect, enter big year will cause CTime assert failed Product: Wine Version: 1.2 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: comctl32 AssignedTo: wine-bugs@winehq.org ReportedBy: drangon.mail@gmail.com
When use datetime control, call SetRange() to limit time, then modified the year value to out of range, the modification can success, so SetRange() has no effect.
In Windows, the same application, the same SetRange() call, then modified the year value to out of range, the datetime control will refuse the modification, and return to old value.
I think there should be some check in DATETIME_Char() function in file "dlls/comctl32/datetime.c" , after change the datetime, call something like MONTHCAL_IsDateInValidRange() to validate the value.