Closed AndrewWPhillips closed 8 years ago
The problem is that parsing a date string with a 2 digit year using time_get::get_date produces a date in the range 1900-1999. This may be a bug in the MS CRT (I am using VC++ 2010) - I was under the impression that it should return values in the range 1970-2069 for a 2 digit year.
However, to avoid this problem I have changed the code to always create a 4 digit year irrespective of the Windows short date format. To do this (not easy) we get the Windows short date format (eg mm/dd/yy) and convert it (eg mm/dd/yyyy) before calling Windows system call "GetDataFormat" - see the new function FormatDate in misc.cpp. If the Windows short date format already has a 4 digit year (eg dd/mm/yyyy) the the old code (strftime) is used.
This fix appears in build number (Git checkin) 1347. (To see the build number hold down shift while opening the About box in HexEdit.)
Steps to reproduce