diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 5275b36576..3e3e77b857 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -33,7 +33,7 @@ #include #include "font.h" -#define NDEBUG +//#define NDEBUG #include /* TPMF_FIXED_PITCH is confusing; brain-dead api */ @@ -2142,7 +2142,9 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, PSHARED_FACE_CACHE Cache; FT_Face Face = SharedFace->Face; + DPRINT("No.1\n"); RtlFreeUnicodeString(pNameW); + DPRINT("No.2\n"); /* select cache */ if (PRIMARYLANGID(LangID) == LANG_ENGLISH) @@ -2154,6 +2156,7 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, Cache = &SharedFace->UserLanguage; } + DPRINT("No.3\n"); /* use cache if available */ if (NameID == TT_NAME_ID_FONT_FAMILY && Cache->FontFamily.Buffer) { @@ -2164,17 +2167,20 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, return DuplicateUnicodeString(&Cache->FullName, pNameW); } + DPRINT("No.4\n"); BestIndex = -1; BestScore = 0; Count = FT_Get_Sfnt_Name_Count(Face); for (i = 0; i < Count; ++i) { + DPRINT("No.5\n"); Error = FT_Get_Sfnt_Name(Face, i, &Name); if (Error) { continue; /* failure */ } + DPRINT("No.6\n"); if (Name.name_id != NameID) { @@ -2220,6 +2226,7 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, } } + DPRINT("No.7\n"); if (BestIndex >= 0) { /* store the best name */ @@ -2228,12 +2235,15 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, { /* NOTE: Name.string is not null-terminated */ UNICODE_STRING Tmp; + DPRINT("No.8\n"); Tmp.Buffer = (PWCH)Name.string; Tmp.Length = Tmp.MaximumLength = Name.string_len; + DPRINT("No.9\n"); pNameW->Length = 0; pNameW->MaximumLength = Name.string_len + sizeof(WCHAR); pNameW->Buffer = ExAllocatePoolWithTag(PagedPool, pNameW->MaximumLength, TAG_USTR); + DPRINT("No.10\n"); if (pNameW->Buffer) { @@ -2248,6 +2258,7 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, { Status = STATUS_INSUFFICIENT_RESOURCES; } + DPRINT("No.11\n"); } } @@ -2256,13 +2267,17 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, /* defaulted */ if (NameID == TT_NAME_ID_FONT_SUBFAMILY) { + DPRINT("No.12\n"); RtlInitAnsiString(&AnsiName, Face->style_name); Status = RtlAnsiStringToUnicodeString(pNameW, &AnsiName, TRUE); + DPRINT("No.13\n"); } else { + DPRINT("No.14\n"); RtlInitAnsiString(&AnsiName, Face->family_name); Status = RtlAnsiStringToUnicodeString(pNameW, &AnsiName, TRUE); + DPRINT("No.15\n"); } } @@ -2272,18 +2287,22 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace, if (NameID == TT_NAME_ID_FONT_FAMILY) { ASSERT_FREETYPE_LOCK_NOT_HELD(); + DPRINT("No.16\n"); IntLockFreeType(); if (!Cache->FontFamily.Buffer) DuplicateUnicodeString(pNameW, &Cache->FontFamily); IntUnLockFreeType(); + DPRINT("No.17\n"); } else if (NameID == TT_NAME_ID_FULL_NAME) { ASSERT_FREETYPE_LOCK_NOT_HELD(); + DPRINT("No.18\n"); IntLockFreeType(); if (!Cache->FullName.Buffer) DuplicateUnicodeString(pNameW, &Cache->FullName); IntUnLockFreeType(); + DPRINT("No.19\n"); } }