oleaut32: Fixed VARIANT_FormatDate behavior on dates before year 1600.
This commit is contained in:
parent
30630b4da2
commit
a2d74e5f0c
|
@ -1908,7 +1908,7 @@ static HRESULT VARIANT_FormatDate(LPVARIANT pVarIn, LPOLESTR lpszFormat,
|
|||
WCHAR fmt_buff[80];
|
||||
|
||||
if (!GetLocaleInfoW(lcid, dwFmt, fmt_buff, sizeof(fmt_buff)/sizeof(WCHAR)) ||
|
||||
!GetDateFormatW(lcid, 0, &udate.st, fmt_buff, pBuff,
|
||||
!get_date_format(lcid, 0, &udate.st, fmt_buff, pBuff,
|
||||
sizeof(buff)/sizeof(WCHAR)-(pBuff-buff)))
|
||||
{
|
||||
hRes = E_INVALIDARG;
|
||||
|
|
|
@ -127,3 +127,5 @@ typedef struct tagVARIANT_NUMBER_CHARS
|
|||
|
||||
BOOL VARIANT_GetLocalisedText(LANGID, DWORD, WCHAR *) DECLSPEC_HIDDEN;
|
||||
HRESULT VARIANT_ClearInd(VARIANTARG *) DECLSPEC_HIDDEN;
|
||||
BOOL get_date_format(LCID, DWORD, const SYSTEMTIME *,
|
||||
const WCHAR *, WCHAR *, int) DECLSPEC_HIDDEN;
|
||||
|
|
|
@ -6596,7 +6596,7 @@ static inline int output_int_len(int o, int min_len, WCHAR *date, int date_len)
|
|||
}
|
||||
|
||||
/* format date string, similar to GetDateFormatW function but works on bigger range of dates */
|
||||
static BOOL get_date_format(LCID lcid, DWORD flags, const SYSTEMTIME *st,
|
||||
BOOL get_date_format(LCID lcid, DWORD flags, const SYSTEMTIME *st,
|
||||
const WCHAR *fmt, WCHAR *date, int date_len)
|
||||
{
|
||||
static const LCTYPE dayname[] = {
|
||||
|
|
Loading…
Reference in New Issue