widl: Correctly set the import library offset for all imported types.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47031 Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
5b6bf621cd
commit
6c64d02117
|
@ -497,6 +497,7 @@ struct _importinfo_t {
|
|||
};
|
||||
|
||||
struct _importlib_t {
|
||||
int offset;
|
||||
char *name;
|
||||
|
||||
int version;
|
||||
|
|
|
@ -702,15 +702,15 @@ static void alloc_importinfo(msft_typelib_t *typelib, importinfo_t *importinfo)
|
|||
|
||||
guid_idx = ctl2_alloc_guid(typelib, &guid);
|
||||
|
||||
alloc_importfile(typelib, guid_idx, importlib->version&0xffff,
|
||||
importlib->version>>16, importlib->name);
|
||||
importlib->offset = alloc_importfile(typelib, guid_idx, importlib->version & 0xffff,
|
||||
importlib->version >> 16, importlib->name);
|
||||
}
|
||||
|
||||
if(importinfo->offset == -1 || !(importinfo->flags & MSFT_IMPINFO_OFFSET_IS_GUID)) {
|
||||
MSFT_ImpInfo impinfo;
|
||||
|
||||
impinfo.flags = importinfo->flags;
|
||||
impinfo.oImpFile = 0;
|
||||
impinfo.oImpFile = importlib->offset;
|
||||
|
||||
if(importinfo->flags & MSFT_IMPINFO_OFFSET_IS_GUID) {
|
||||
MSFT_GuidEntry guid;
|
||||
|
|
Loading…
Reference in New Issue