diff --git a/reactos/dll/win32/gdi32/objects/font.c b/reactos/dll/win32/gdi32/objects/font.c index becc851ecab..faf74891296 100644 --- a/reactos/dll/win32/gdi32/objects/font.c +++ b/reactos/dll/win32/gdi32/objects/font.c @@ -391,12 +391,17 @@ int STDCALL EnumFontFamiliesExA (HDC hdc, LPLOGFONTA lpLogfont, FONTENUMPROCA lpEnumFontFamExProc, LPARAM lParam, DWORD dwFlags) { - LOGFONTW LogFontW; + LOGFONTW LogFontW, *pLogFontW; - LogFontA2W(&LogFontW, lpLogfont); + if (lpLogfont) + { + LogFontA2W(&LogFontW,lpLogfont); + pLogFontW = &LogFontW; + } + else pLogFontW = NULL; /* no need to convert LogFontW back to lpLogFont b/c it's an [in] parameter only */ - return IntEnumFontFamilies(hdc, &LogFontW, lpEnumFontFamExProc, lParam, FALSE); + return IntEnumFontFamilies(hdc, pLogFontW, lpEnumFontFamExProc, lParam, FALSE); }