Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 605628d3 authored by David Pursell's avatar David Pursell Committed by Gerrit Code Review
Browse files

Merge "adbd: properly close subprocess pipes on Ctrl+C."

parents 0fdd6632 f2aa186c
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -477,8 +477,14 @@ void Subprocess::PassDataStreams() {
                // and only fall back on this for unexpected closures.
                D("protocol FD died, sending SIGHUP to pid %d", pid_);
                kill(pid_, SIGHUP);

                // We also need to close the pipes connected to the child process
                // so that if it ignores SIGHUP and continues to write data it
                // won't fill up the pipe and block.
                stdinout_sfd_.clear();
                stderr_sfd_.clear();
            }
            dead_sfd->reset(-1);
            dead_sfd->clear();
        }
    }
}