Module: wine Branch: master Commit: 0f22205768ab1e03ef9e5c0294c2dcd37f46f771 URL: https://source.winehq.org/git/wine.git/?a=commit;h=0f22205768ab1e03ef9e5c029...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Thu Dec 5 11:55:58 2019 +0300
dwrite: Respond to IDWriteFontFace5 queries.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/dwrite/font.c | 7 ++++--- dlls/dwrite/tests/font.c | 17 ++++++++++------- 2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c index 8788181303..bfe32d5fd9 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 f0266cb751..d06b2f555a 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);