diff --git a/dlls/oleaut32/varformat.c b/dlls/oleaut32/varformat.c index 5c04dc59de2..ead2cb1e30e 100644 --- a/dlls/oleaut32/varformat.c +++ b/dlls/oleaut32/varformat.c @@ -1598,10 +1598,11 @@ static HRESULT VARIANT_FormatDate(LPVARIANT pVarIn, LPOLESTR lpszFormat, case FMT_DATE_GENERAL: { BSTR date = NULL; - WCHAR *pDate = date; - hRes = VarBstrFromDate(V_DATE(&vDate), lcid, 0, pbstrOut); + WCHAR *pDate; + hRes = VarBstrFromDate(V_DATE(&vDate), lcid, 0, &date); if (FAILED(hRes)) goto VARIANT_FormatDate_Exit; + pDate = date; while (*pDate) *pBuff++ = *pDate++; SysFreeString(date); @@ -1623,10 +1624,11 @@ static HRESULT VARIANT_FormatDate(LPVARIANT pVarIn, LPOLESTR lpszFormat, { /* FIXME: VARIANT_CALENDAR HIJRI should cause Hijri output */ BSTR date = NULL; - WCHAR *pDate = date; - hRes = VarBstrFromDate(V_DATE(&vDate), lcid, VAR_TIMEVALUEONLY, pbstrOut); + WCHAR *pDate; + hRes = VarBstrFromDate(V_DATE(&vDate), lcid, VAR_TIMEVALUEONLY, &date); if (FAILED(hRes)) goto VARIANT_FormatDate_Exit; + pDate = date; while (*pDate) *pBuff++ = *pDate++; SysFreeString(date);