[Spice-devel] [PATCH spice-server v3 30/32] replay: Port to Windows
Frediano Ziglio
fziglio at redhat.com
Mon Jan 7 18:02:13 UTC 2019
Client process termination did not work for Windows, used Win32
APIs.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau at redhat.com>
---
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 b88c03c7..6367ce21 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;
}
}
--
2.20.1
More information about the Spice-devel
mailing list