mirror of
https://github.com/containers/podman.git
synced 2026-07-10 15:25:00 -04:00
The Docker client (docker run) sends /wait then /start, but it only sends /start after receiving the 200 OK response from /wait. Previously, the event subscription for the "died" event was set up after the 200 was sent, creating a window where a fast-exiting container (e.g. hello-world) could emit its "died" event before the subscription was ready, causing the client to hang forever. Fix this by subscribing to "died" events before flushing the 200 status code. This guarantees the event listener is ready before the client can send /start, eliminating the race entirely. Fixes: https://github.com/containers/podman/issues/28514 Signed-off-by: Jan Rodák <hony.com@seznam.cz>