Fixed possible SIGCHILD signal lost

When multiple(eg. 20) xrdp connections are disconnected at the same time(eg.  close all rdp client at the same time), zombie process may be spawned.
This commit is contained in:
zbstao
2022-02-10 09:42:33 +08:00
parent a13742f097
commit 35d400a899
2 changed files with 9 additions and 7 deletions
+8 -4
View File
@@ -122,12 +122,16 @@ sig_sesman_session_end(int sig)
return;
}
pid = g_waitchild();
if (pid > 0)
do
{
session_kill(pid);
pid = g_waitchild();
if (pid > 0)
{
session_kill(pid);
}
}
while (pid >= 0);
}
/******************************************************************************/