dwrite: Font search is case insensitive.
This commit is contained in:
parent
27ae589d2a
commit
20aee0673d
|
@ -1431,7 +1431,7 @@ static UINT32 collection_find_family(struct dwrite_fontcollection *collection, c
|
||||||
for (j = 0; j < IDWriteLocalizedStrings_GetCount(family_name); j++) {
|
for (j = 0; j < IDWriteLocalizedStrings_GetCount(family_name); j++) {
|
||||||
WCHAR buffer[255];
|
WCHAR buffer[255];
|
||||||
hr = IDWriteLocalizedStrings_GetString(family_name, j, buffer, 255);
|
hr = IDWriteLocalizedStrings_GetString(family_name, j, buffer, 255);
|
||||||
if (SUCCEEDED(hr) && !strcmpW(buffer, name))
|
if (SUCCEEDED(hr) && !strcmpiW(buffer, name))
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,6 +58,8 @@ static inline BOOL heap_free(void *mem)
|
||||||
|
|
||||||
static const WCHAR test_fontfile[] = {'w','i','n','e','_','t','e','s','t','_','f','o','n','t','.','t','t','f',0};
|
static const WCHAR test_fontfile[] = {'w','i','n','e','_','t','e','s','t','_','f','o','n','t','.','t','t','f',0};
|
||||||
static const WCHAR tahomaW[] = {'T','a','h','o','m','a',0};
|
static const WCHAR tahomaW[] = {'T','a','h','o','m','a',0};
|
||||||
|
static const WCHAR tahomaUppercaseW[] = {'T','A','H','O','M','A',0};
|
||||||
|
static const WCHAR tahomaStrangecaseW[] = {'t','A','h','O','m','A',0};
|
||||||
static const WCHAR blahW[] = {'B','l','a','h','!',0};
|
static const WCHAR blahW[] = {'B','l','a','h','!',0};
|
||||||
|
|
||||||
static IDWriteFactory *create_factory(void)
|
static IDWriteFactory *create_factory(void)
|
||||||
|
@ -1376,6 +1378,20 @@ static void test_system_fontcollection(void)
|
||||||
ok(ret, "got %d\n", ret);
|
ok(ret, "got %d\n", ret);
|
||||||
ok(i != (UINT32)-1, "got %u\n", i);
|
ok(i != (UINT32)-1, "got %u\n", i);
|
||||||
|
|
||||||
|
ret = FALSE;
|
||||||
|
i = (UINT32)-1;
|
||||||
|
hr = IDWriteFontCollection_FindFamilyName(collection, tahomaUppercaseW, &i, &ret);
|
||||||
|
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||||
|
ok(ret, "got %d\n", ret);
|
||||||
|
ok(i != (UINT32)-1, "got %u\n", i);
|
||||||
|
|
||||||
|
ret = FALSE;
|
||||||
|
i = (UINT32)-1;
|
||||||
|
hr = IDWriteFontCollection_FindFamilyName(collection, tahomaStrangecaseW, &i, &ret);
|
||||||
|
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||||
|
ok(ret, "got %d\n", ret);
|
||||||
|
ok(i != (UINT32)-1, "got %u\n", i);
|
||||||
|
|
||||||
/* get back local file loader */
|
/* get back local file loader */
|
||||||
hr = IDWriteFontCollection_GetFontFamily(collection, i, &family);
|
hr = IDWriteFontCollection_GetFontFamily(collection, i, &family);
|
||||||
ok(hr == S_OK, "got 0x%08x\n", hr);
|
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||||
|
|
Loading…
Reference in New Issue