oleaut32: Add ICreateTypeLib2::SetCustData implementation.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Piotr Caban 2016-01-27 13:04:29 +01:00 committed by Alexandre Julliard
parent 17af4fe592
commit aa56d735df
1 changed files with 11 additions and 3 deletions

View File

@ -9984,7 +9984,7 @@ static HRESULT WINAPI ICreateTypeLib2_fnSaveAllChanges(ICreateTypeLib2 *iface)
else else
file.header.NameOffset = -1; file.header.NameOffset = -1;
file.header.CustomDataOffset = -1; /* TODO SetCustData not impl yet */ file.header.CustomDataOffset = WMSFT_compile_custdata(&This->custdata_list, &file);
if(This->guid) if(This->guid)
file.header.posguid = This->guid->offset; file.header.posguid = This->guid->offset;
@ -10134,8 +10134,16 @@ static HRESULT WINAPI ICreateTypeLib2_fnSetCustData(ICreateTypeLib2 *iface,
REFGUID guid, VARIANT *varVal) REFGUID guid, VARIANT *varVal)
{ {
ITypeLibImpl *This = impl_from_ICreateTypeLib2(iface); ITypeLibImpl *This = impl_from_ICreateTypeLib2(iface);
FIXME("%p %s %p - stub\n", This, debugstr_guid(guid), varVal); TLBGuid *tlbguid;
return E_NOTIMPL;
TRACE("%p %s %p\n", This, debugstr_guid(guid), varVal);
if (!guid || !varVal)
return E_INVALIDARG;
tlbguid = TLB_append_guid(&This->guid_list, guid, -1);
return TLB_set_custdata(&This->custdata_list, tlbguid, varVal);
} }
static HRESULT WINAPI ICreateTypeLib2_fnSetHelpStringContext(ICreateTypeLib2 *iface, static HRESULT WINAPI ICreateTypeLib2_fnSetHelpStringContext(ICreateTypeLib2 *iface,