From ec71c795f3958ba50e97300a420fedcb83796626 Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Sun, 24 Jun 2018 19:30:14 +0100 Subject: [PATCH] replay: Port to Windows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Client process termination did not work for Windows, used Win32 APIs. Signed-off-by: Frediano Ziglio Reviewed-by: Marc-André Lureau --- server/tests/replay.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/server/tests/replay.c b/server/tests/replay.c index efd67a3d..f7d26fec 100644 --- a/server/tests/replay.c +++ b/server/tests/replay.c @@ -210,15 +210,22 @@ static int req_display_notification(QXLInstance *qin) static void end_replay(void) { - int child_status; - /* FIXME: wait threads and end cleanly */ spice_replay_free(replay); if (client_pid) { g_debug("kill %" G_PID_FORMAT, client_pid); +#ifndef _WIN32 + int child_status; + kill(client_pid, SIGINT); waitpid(client_pid, &child_status, 0); +#else + TerminateProcess(client_pid, 0); + WaitForSingleObject(client_pid, INFINITE); +#endif + g_spawn_close_pid(client_pid); + client_pid = 0; } }