diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-12-16 14:42:36 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-12-17 09:15:59 +0100 |
| commit | 0882f910df3672e084a8fefa522e8dae4d248fe3 (patch) | |
| tree | 9cc27f7bdee2a3d3335dbbaf0c0a787264f436c8 /src/wrapped32/wrappedlibxcb.c | |
| parent | f65c22d329e0f2405e2b0f12bc349331b2e4d74b (diff) | |
| download | box64-0882f910df3672e084a8fefa522e8dae4d248fe3.tar.gz box64-0882f910df3672e084a8fefa522e8dae4d248fe3.zip | |
[BOX32][WRAPPING] Added 32bits wrapped libxcb-res and fixes some wrapped functions from libxcb
Diffstat (limited to 'src/wrapped32/wrappedlibxcb.c')
| -rw-r--r-- | src/wrapped32/wrappedlibxcb.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/wrapped32/wrappedlibxcb.c b/src/wrapped32/wrappedlibxcb.c index a2d8171d..47bc12e1 100644 --- a/src/wrapped32/wrappedlibxcb.c +++ b/src/wrapped32/wrappedlibxcb.c @@ -28,9 +28,12 @@ typedef struct my_xcb_XXX_iterator_s { int rem; int index; } my_xcb_XXX_iterator_t; -// xcb_visualtype_iterator_t is like my_xcb_XXX_iterator_t -// xcb_depth_iterator_t is similar to my_xcb_XXX_iterator_t -// xcb_format_iterator_t is similar to my_xcb_XXX_iterator_t + +typedef struct my_xcb_XXX_iterator_32_s { + ptr_t data; + int rem; + int index; +} my_xcb_XXX_iterator_32_t; typedef struct my_xcb_cookie_s { uint32_t data; @@ -80,10 +83,13 @@ SUPER(xcb_intern_atom, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t on #undef SUPER #define SUPER(F) \ - EXPORT void* my32_##F(x64emu_t* emu, my_xcb_XXX_iterator_t* ret, void* R) \ + EXPORT void* my32_##F(x64emu_t* emu, my_xcb_XXX_iterator_32_t* ret, void* R)\ { \ (void)emu; \ - *ret = my->F(R); \ + my_xcb_XXX_iterator_t ret_l = my->F(R); \ + ret->data = to_ptrv(ret_l.data); \ + ret->rem = ret_l.rem; \ + ret->index = ret_l.index; \ return ret; \ } |