Dmitry Timoshkov : windowscodecs: Implement MetadataHandler_GetMetadataHandlerInfo.
Module: wine Branch: master Commit: 27743c81a9ef2fe80c677891dba25e51cb0527d1 URL: http://source.winehq.org/git/wine.git/?a=commit;h=27743c81a9ef2fe80c677891db... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Wed Jun 20 14:00:08 2012 +0900 windowscodecs: Implement MetadataHandler_GetMetadataHandlerInfo. --- dlls/windowscodecs/info.c | 3 +++ dlls/windowscodecs/metadatahandler.c | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/dlls/windowscodecs/info.c b/dlls/windowscodecs/info.c index 47cbc85..a2cc1a7 100644 --- a/dlls/windowscodecs/info.c +++ b/dlls/windowscodecs/info.c @@ -1618,7 +1618,10 @@ HRESULT CreateComponentInfo(REFCLSID clsid, IWICComponentInfo **ppIInfo) hr = HRESULT_FROM_WIN32(res); } else + { + FIXME("%s is not supported\n", wine_dbgstr_guid(clsid)); hr = E_FAIL; + } RegCloseKey(clsidkey); diff --git a/dlls/windowscodecs/metadatahandler.c b/dlls/windowscodecs/metadatahandler.c index 6433136..80fd32d 100644 --- a/dlls/windowscodecs/metadatahandler.c +++ b/dlls/windowscodecs/metadatahandler.c @@ -145,8 +145,20 @@ static HRESULT WINAPI MetadataHandler_GetMetadataFormat(IWICMetadataWriter *ifac static HRESULT WINAPI MetadataHandler_GetMetadataHandlerInfo(IWICMetadataWriter *iface, IWICMetadataHandlerInfo **ppIHandler) { - FIXME("(%p,%p): stub\n", iface, ppIHandler); - return E_NOTIMPL; + HRESULT hr; + IWICComponentInfo *component_info; + MetadataHandler *This = impl_from_IWICMetadataWriter(iface); + + TRACE("%p,%p\n", iface, ppIHandler); + + hr = CreateComponentInfo(This->vtable->clsid, &component_info); + if (FAILED(hr)) return hr; + + hr = IWICComponentInfo_QueryInterface(component_info, &IID_IWICMetadataHandlerInfo, + (void **)ppIHandler); + + IWICComponentInfo_Release(component_info); + return hr; } static HRESULT WINAPI MetadataHandler_GetCount(IWICMetadataWriter *iface,
participants (1)
-
Alexandre Julliard