mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2026-03-27 07:58:47 -04:00
client/server: add delete_id request as a fake sync
Add a delete_id request so that the server can reap zombies once the client acks the deletion. As a result, the wl_map zombie_list would only be used for clients that do not have this change. To keep compatibility, the delete_id request is dressed as a sync request, but carries a server object ID instead. Update tests to compensate for additional handshake that sets up delete_id requests. Signed-off-by: Jonathan Leivent <jleivent@comcast.net>
This commit is contained in:
parent
3cd9ca8a65
commit
aff270293b
6 changed files with 185 additions and 7 deletions
|
|
@ -818,6 +818,11 @@ TEST(request_bogus_size)
|
|||
|
||||
test_set_timeout(1);
|
||||
|
||||
/* Because this test reads the expected error off the wire
|
||||
directly without anticipating any prior event from the
|
||||
server, turn off the delete_id handshake event: */
|
||||
assert(setenv("WAYLAND_SERVER_DELETE_ID_HANDSHAKE","0",1) == 0);
|
||||
|
||||
/*
|
||||
* The manufactured message has real size 12. Test all bogus sizes
|
||||
* smaller than that, and zero as the last one since wl_closure_init
|
||||
|
|
|
|||
|
|
@ -59,6 +59,13 @@ struct message {
|
|||
const char *message_name;
|
||||
int args_count;
|
||||
} messages[] = {
|
||||
{ /* this is the WAYLAND_SERVER_DELETE_ID_HANDSHAKE message */
|
||||
.type = WL_PROTOCOL_LOGGER_EVENT,
|
||||
.class = "wl_display",
|
||||
.opcode = 1,
|
||||
.message_name = "delete_id",
|
||||
.args_count = 1,
|
||||
},
|
||||
{
|
||||
.type = WL_PROTOCOL_LOGGER_REQUEST,
|
||||
.class = "wl_display",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue