On Wed, 6 Nov 2019 21:11:08 +0100 Amadeusz Sławiński <am...@asmblr.net> wrote:
> On Wed, 6 Nov 2019 15:12:41 +0100 > Václav Doležal <vdole...@redhat.com> wrote: > > > I think this is bad solution. If some process deliberately closes stdout and > > stderr, screen will block until that process exits. > > > > I am wondering why the zombies show up at all. They were reaped correctly on > > my test process (code below). I guess there is some race with SIGCHLD > > handler. > > > > Right that makes sense, looking at how SIGCHLD is handled, seems like > we only tell it to wait for one child, so if it is slow system, a lot > of childs can stop, but it may only wait for one of them: > > https://git.savannah.gnu.org/cgit/screen.git/tree/src/screen.c?h=screen-v4#n1593 > > seems, like this line should have += instead of = and also this one https://git.savannah.gnu.org/cgit/screen.git/tree/src/screen.c?h=screen-v4#n1571 should be -= 1; > > Axel, can you try changing above line instead? > > Cheers, > Amadeusz > > > >