diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c index 87881813032..bfe32d5fd93 100644 --- a/dlls/dwrite/font.c +++ b/dlls/dwrite/font.c @@ -474,7 +474,8 @@ static HRESULT WINAPI dwritefontface_QueryInterface(IDWriteFontFace5 *iface, REF TRACE("%p, %s, %p.\n", iface, debugstr_guid(riid), obj); - if (IsEqualIID(riid, &IID_IDWriteFontFace4) || + if (IsEqualIID(riid, &IID_IDWriteFontFace5) || + IsEqualIID(riid, &IID_IDWriteFontFace4) || IsEqualIID(riid, &IID_IDWriteFontFace3) || IsEqualIID(riid, &IID_IDWriteFontFace2) || IsEqualIID(riid, &IID_IDWriteFontFace1) || @@ -1425,7 +1426,7 @@ static HRESULT WINAPI dwritefontface5_GetFontAxisValues(IDWriteFontFace5 *iface, return E_NOTIMPL; } -static BOOL WINAPI dwritefontface5_HasVariantions(IDWriteFontFace5 *iface) +static BOOL WINAPI dwritefontface5_HasVariations(IDWriteFontFace5 *iface) { FIXME("%p: stub\n", iface); @@ -1496,7 +1497,7 @@ static const IDWriteFontFace5Vtbl dwritefontfacevtbl = dwritefontface4_ReleaseGlyphImageData, dwritefontface5_GetFontAxisValueCount, dwritefontface5_GetFontAxisValues, - dwritefontface5_HasVariantions, + dwritefontface5_HasVariations, dwritefontface5_GetFontResource, }; diff --git a/dlls/dwrite/tests/font.c b/dlls/dwrite/tests/font.c index f0266cb7510..d06b2f555a6 100644 --- a/dlls/dwrite/tests/font.c +++ b/dlls/dwrite/tests/font.c @@ -9291,25 +9291,28 @@ if (SUCCEEDED(hr)) IDWriteFontFaceReference1_Release(reference); } hr = IDWriteFontFace_QueryInterface(fontface, &IID_IDWriteFontFace5, (void **)&fontface5); -todo_wine ok(hr == S_OK, "Failed to get interface, hr %#x.\n", hr); - if (FAILED(hr)) - return; - hr = IDWriteFontFace5_GetFontResource(fontface5, &resource2); +todo_wine ok(hr == S_OK, "Failed to get font resource, hr %#x.\n", hr); + +if (SUCCEEDED(hr)) +{ ok(resource != resource2, "Unexpected resource instance.\n"); IDWriteFontResource_Release(resource); - +} hr = IDWriteFontFace5_GetFontResource(fontface5, &resource); +todo_wine ok(hr == S_OK, "Failed to get font resource, hr %#x.\n", hr); + +if (SUCCEEDED(hr)) +{ ok(resource != resource2, "Unexpected resource instance.\n"); EXPECT_REF(resource, 1); - IDWriteFontResource_Release(resource); IDWriteFontResource_Release(resource2); - +} IDWriteFontFace5_Release(fontface5); IDWriteFontResource_Release(resource);