[3/4] windowscodecs: Implement MetadataHandler_GetMetadataFormat.
Dmitry Timoshkov
dmitry at baikal.ru
Mon Jun 18 00:32:55 CDT 2012
---
dlls/windowscodecs/metadatahandler.c | 28 +++++++++++++++++++---------
dlls/windowscodecs/tests/metadata.c | 2 --
2 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/dlls/windowscodecs/metadatahandler.c b/dlls/windowscodecs/metadatahandler.c
index 80fd32d..f8b8fcb 100644
--- a/dlls/windowscodecs/metadatahandler.c
+++ b/dlls/windowscodecs/metadatahandler.c
@@ -133,15 +133,6 @@ static ULONG WINAPI MetadataHandler_Release(IWICMetadataWriter *iface)
return ref;
}
-static HRESULT WINAPI MetadataHandler_GetMetadataFormat(IWICMetadataWriter *iface,
- GUID *pguidMetadataFormat)
-{
- if (!pguidMetadataFormat) return E_INVALIDARG;
-
- FIXME("(%p,%s): stub\n", iface, debugstr_guid(pguidMetadataFormat));
- return E_NOTIMPL;
-}
-
static HRESULT WINAPI MetadataHandler_GetMetadataHandlerInfo(IWICMetadataWriter *iface,
IWICMetadataHandlerInfo **ppIHandler)
{
@@ -161,6 +152,25 @@ static HRESULT WINAPI MetadataHandler_GetMetadataHandlerInfo(IWICMetadataWriter
return hr;
}
+static HRESULT WINAPI MetadataHandler_GetMetadataFormat(IWICMetadataWriter *iface,
+ GUID *pguidMetadataFormat)
+{
+ HRESULT hr;
+ IWICMetadataHandlerInfo *metadata_info;
+
+ TRACE("%p,%p\n", iface, pguidMetadataFormat);
+
+ if (!pguidMetadataFormat) return E_INVALIDARG;
+
+ hr = MetadataHandler_GetMetadataHandlerInfo(iface, &metadata_info);
+ if (FAILED(hr)) return hr;
+
+ hr = IWICMetadataHandlerInfo_GetMetadataFormat(metadata_info, pguidMetadataFormat);
+ IWICMetadataHandlerInfo_Release(metadata_info);
+
+ return hr;
+}
+
static HRESULT WINAPI MetadataHandler_GetCount(IWICMetadataWriter *iface,
UINT *pcCount)
{
diff --git a/dlls/windowscodecs/tests/metadata.c b/dlls/windowscodecs/tests/metadata.c
index cf00f1f..e746c89 100644
--- a/dlls/windowscodecs/tests/metadata.c
+++ b/dlls/windowscodecs/tests/metadata.c
@@ -418,9 +418,7 @@ static void test_metadata_IFD(void)
IWICEnumMetadataItem_Release(enumerator);
hr = IWICMetadataReader_GetMetadataFormat(reader, &format);
-todo_wine
ok(hr == S_OK, "GetMetadataFormat error %#x\n", hr);
-todo_wine
ok(IsEqualGUID(&format, &GUID_MetadataFormatIfd), "unexpected format %s\n", debugstr_guid(&format));
hr = IWICMetadataReader_GetMetadataFormat(reader, NULL);
--
1.7.11
More information about the wine-patches
mailing list