Re: Is it normal that the COM vtbl structure cannot be aligned between Windows and Wine

zhengxianwei <[email protected]> Wed, 11 Jun 2025 20:56:50 +0800
Newsgroups gmane.comp.emulators.wine.devel
Message-ID <CABeGAqVNDwbvHXmeNuCr_+TpeGxCD=7buS4oro8z9_eEEmQrsQ@mail.gmail.com>
cool job, thank you

On Wed, Jun 11, 2025 at 8:51 PM Zhiyi Zhang <[email protected]> wrote:

>
>
> On 6/11/25 20:16, zhengxianwei wrote:
> > In wine, Visual2Vtbl
> >
> > ```
> > typedef struct IDCompositionVisual2Vtbl {
> >     BEGIN_INTERFACE
> >
> >     /*** IUnknown methods ***/
> >     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
> >         IDCompositionVisual2 *This,
> >         REFIID riid,
> >         void **ppvObject);
> >
> >     ULONG (STDMETHODCALLTYPE *AddRef)(
> >         IDCompositionVisual2 *This);
> >
> >     ULONG (STDMETHODCALLTYPE *Release)(
> >         IDCompositionVisual2 *This);
> >
> >     /*** IDCompositionVisual methods ***/
> >     HRESULT (STDMETHODCALLTYPE *SetOffsetX)(
> >         IDCompositionVisual2 *This,
> >         float offset_x);
> >
> >     HRESULT (STDMETHODCALLTYPE *SetOffsetXAnimation)(
> >         IDCompositionVisual2 *This,
> >         IDCompositionAnimation *animation);
> >
> >     HRESULT (STDMETHODCALLTYPE *SetOffsetY)(
> >         IDCompositionVisual2 *This,
> >         float offset_y);
> > ```
> >
> > setOffsetX (float *) at offset 0x18
> > visual2vtbl.png
> > But in windows 0x18 is setOffsetX (Animation *)
> >
> > Is this correct?
> >
>
> No. This is a bug. It's addressed by
> https://gitlab.winehq.org/zhiyi/wine/-/commit/1ef17ccd021d7b549abeabdbcf9e1448843084d8
> .
> Please see
> https://gitlab.winehq.org/zhiyi/wine/-/commits/bug-23698-react-native if
> you want the latest dcomp work.
>
>
>
>
>