mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2025-11-03 09:01:42 -05:00
client: Invoke new_id closure arguments as pointers instead of integers
This commit adds a flags parameter to wl_closure_invoke(). The so far added flags are ment to specify if the invokation is client side or server side. When on the server side, closure arguments of type 'new_id' should be invoked as a integer id while on the client side they should be invoked as a pointer to a proxy object. This fixes a bug happening when the address of a client side 'new_id' proxy object did not fit in a 32 bit integer. krh: Squashed test suite compile fix from Jason Ekstrand. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
This commit is contained in:
parent
e053a56251
commit
cb73bffed5
6 changed files with 23 additions and 12 deletions
|
|
@ -129,8 +129,13 @@ wl_connection_demarshal(struct wl_connection *connection,
|
|||
int
|
||||
wl_closure_lookup_objects(struct wl_closure *closure, struct wl_map *objects);
|
||||
|
||||
enum wl_closure_invoke_flag {
|
||||
WL_CLOSURE_INVOKE_CLIENT = (1 << 0),
|
||||
WL_CLOSURE_INVOKE_SERVER = (1 << 1)
|
||||
};
|
||||
|
||||
void
|
||||
wl_closure_invoke(struct wl_closure *closure,
|
||||
wl_closure_invoke(struct wl_closure *closure, uint32_t flags,
|
||||
struct wl_object *target, void (*func)(void), void *data);
|
||||
int
|
||||
wl_closure_send(struct wl_closure *closure, struct wl_connection *connection);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue