Patch to support VT_BYREF | VT_I4 in typelib.c _copy_arg

Marcus Meissner meissner at suse.de
Fri Dec 10 13:12:54 CST 2004


On Fri, Dec 10, 2004 at 10:05:33AM -0600, Robert Shearman wrote:
> Erich Hoover wrote:
> 
> >dlls/oleaut32/typelib.c does not currently support VT_BYREF | VT_I4 in 
> >_copy_arg, this causes InstallShield to crash when attempting to 
> >install the demo for "Prince of Persia: Warrior Within" (and probably 
> >other InstallShield programs as well).  Installation can complete with 
> >this fix under Win9x w/ Desktop (2K and XP options still fail due to 
> >"unimplemented function imagehlp.dll.StackWalk64" and non-Desktop 
> >fails for unknown reason).


....

> >--- 4543,4554 ----
> >              memcpy(argpos, &V_UNION(arg,lVal), 4);
> >              hres = S_OK;
> >              break;
> >+           case VT_BYREF | VT_I4:
> >+              *argpos = V_UNION(arg,iVal);
> >+              hres = S_OK;
> >+              break;

VT_BYREF|VT_I4 should probably use *argpos = *V_UNION(arg,plVal);.

Ciao, Marcus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20041210/2205fd02/attachment.pgp


More information about the wine-devel mailing list