X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fnotification-thread-events.c;fp=src%2Fbin%2Flttng-sessiond%2Fnotification-thread-events.c;h=655400f9484c790af2116f1855203a806f562e2d;hp=414e5dd8aec0afd90a685eb1a23a53f315b2e554;hb=982583bdd4fea58b902f8396a83e2233a70087ad;hpb=b3ba184e31e0e5cc67e7d7fb6594096a068ad1be diff --git a/src/bin/lttng-sessiond/notification-thread-events.c b/src/bin/lttng-sessiond/notification-thread-events.c index 414e5dd8a..655400f94 100644 --- a/src/bin/lttng-sessiond/notification-thread-events.c +++ b/src/bin/lttng-sessiond/notification-thread-events.c @@ -3954,6 +3954,12 @@ int handle_notification_thread_client_in( goto end; } + if (client->communication.inbound.bytes_to_receive == 0 && + client->communication.inbound.fds_to_receive != 0) { + /* Only FDs left to receive. */ + goto receive_fds; + } + offset = client->communication.inbound.payload.buffer.size - client->communication.inbound.bytes_to_receive; if (client->communication.inbound.expect_creds) { @@ -3982,6 +3988,7 @@ int handle_notification_thread_client_in( goto end; } +receive_fds: assert(client->communication.inbound.bytes_to_receive == 0); /* Receive fds. */