Rob Shearman <robertshear...@gmail.com> writes: > @@ -874,8 +874,8 @@ unsigned char * WINAPI LPSAFEARRAY_UserMarshal(ULONG > *pFlags, unsigned char *Buf > > *(ULONG *)Buffer = ulCellCount; > Buffer += sizeof(ULONG); > - *(ULONG_PTR *)Buffer = (ULONG_PTR)psa->pvData; > - Buffer += sizeof(ULONG_PTR); > + *(ULONG *)Buffer = (ULONG)(ULONG_PTR)psa->pvData; > + Buffer += sizeof(ULONG);
Wouldn't this break if the pointer happens to be 4Gb-aligned? -- Alexandre Julliard julli...@winehq.org