oleaut32/typelib: Use BSTR for filename.

This commit is contained in:
Nikolay Sivov 2011-10-06 13:55:47 -05:00 committed by Alexandre Julliard
parent c71637b692
commit 8899c2e59a
1 changed files with 5 additions and 6 deletions

View File

@ -167,7 +167,7 @@ typedef struct tagICreateTypeLib2Impl
ITypeLib2 ITypeLib2_iface; ITypeLib2 ITypeLib2_iface;
LONG ref; LONG ref;
WCHAR *filename; BSTR filename;
MSFT_Header typelib_header; MSFT_Header typelib_header;
INT helpStringDll; INT helpStringDll;
@ -4329,7 +4329,7 @@ static ULONG WINAPI ICreateTypeLib2_fnRelease(ICreateTypeLib2 *iface)
This->typelib_segment_data[i] = NULL; This->typelib_segment_data[i] = NULL;
} }
heap_free(This->filename); SysFreeString(This->filename);
This->filename = NULL; This->filename = NULL;
while (This->typeinfos) { while (This->typeinfos) {
@ -5216,22 +5216,21 @@ static const ITypeLib2Vtbl typelib2vt =
ITypeLib2_fnGetAllCustData, ITypeLib2_fnGetAllCustData,
}; };
static ICreateTypeLib2 *ICreateTypeLib2_Constructor(SYSKIND syskind, LPCOLESTR szFile) static ICreateTypeLib2 *ICreateTypeLib2_Constructor(SYSKIND syskind, LPCOLESTR filename)
{ {
ICreateTypeLib2Impl *create_tlib2; ICreateTypeLib2Impl *create_tlib2;
int failed = 0; int failed = 0;
TRACE("Constructing ICreateTypeLib2 (%d, %s)\n", syskind, debugstr_w(szFile)); TRACE("Constructing ICreateTypeLib2 (%d, %s)\n", syskind, debugstr_w(filename));
create_tlib2 = heap_alloc_zero(sizeof(ICreateTypeLib2Impl)); create_tlib2 = heap_alloc_zero(sizeof(ICreateTypeLib2Impl));
if (!create_tlib2) return NULL; if (!create_tlib2) return NULL;
create_tlib2->filename = heap_alloc((strlenW(szFile) + 1) * sizeof(WCHAR)); create_tlib2->filename = SysAllocString(filename);
if (!create_tlib2->filename) { if (!create_tlib2->filename) {
heap_free(create_tlib2); heap_free(create_tlib2);
return NULL; return NULL;
} }
strcpyW(create_tlib2->filename, szFile);
ctl2_init_header(create_tlib2); ctl2_init_header(create_tlib2);
ctl2_init_segdir(create_tlib2); ctl2_init_segdir(create_tlib2);