Author: Andy Green Date: Wed Aug 13 17:30:53 2025 +0100 lws_spawn: windows plat fixes diff --git a/lib/plat/windows/windows-spawn.c b/lib/plat/windows/windows-spawn.c index 1ceace1..b7dc714 100644 --- a/lib/plat/windows/windows-spawn.c +++ b/lib/plat/windows/windows-spawn.c @@ -527,6 +527,9 @@ lws_spawn_piped(const struct lws_spawn_piped_info *i) lws_sul_schedule(context, i->tsi, &lsp->sul, lws_spawn_timeout, i->timeout_us); + if (i->plsp) + *(i->plsp) = lsp; + return lsp; bail3: @@ -562,14 +565,21 @@ lws_spawn_stdwsi_closed(struct lws_spawn_piped *lsp, struct lws *wsi) assert(lsp); lsp->pipes_alive--; - lwsl_debug("%s: pipes alive %d\n", __func__, lsp->pipes_alive); - if (!lsp->pipes_alive) + lwsl_wsi_warn(wsi, "stdxxx down: pipes alive %d\n", lsp->pipes_alive); + if (!lsp->pipes_alive) { + lwsl_wsi_warn(wsi, "Scheduling reap"); lws_sul_schedule(lsp->info.vh->context, lsp->info.tsi, &lsp->sul_reap, lws_spawn_sul_reap, 1); + } for (n = 0; n < 3; n++) - if (lsp->stdwsi[n] == wsi) + if (lsp->stdwsi[n] == wsi) { + lwsl_wsi_warn(wsi, "Identified stxxx wsi in lsp"); lsp->stdwsi[n] = NULL; + return; + } + + lwsl_wsi_warn(wsi, "!!! unable to find stdwsi in lsp %p", lsp); } int