gtestdbus: Don’t close stdout for dbus-daemon
authorPhilip Withnall <philip@tecnocode.co.uk>
Sat, 21 Jun 2014 22:01:08 +0000 (23:01 +0100)
committerPhilip Withnall <philip@tecnocode.co.uk>
Sun, 22 Jun 2014 12:02:18 +0000 (13:02 +0100)
commitd80adeaa960ddfa13837900d0391f9bd9c239f78
tree5490bec8808b3afc309c1ec2c0aaf605198301dc
parent0950369899ac04ebe0357d0b1ba834c4dab39219
gtestdbus: Don’t close stdout for dbus-daemon

The stdout FD passed to dbus-daemon is propagated to all its child
processes, such as service activated processes. If we close the FD after
reading the bus address from the daemon, any child process which
subsequently writes to stdout (e.g. for logging) will get a SIGPIPE and
explode.

Instead of closing the stdout FD immediately after dbus-daemon has
spawned, keep it open until the daemon is killed.

https://bugzilla.gnome.org/show_bug.cgi?id=732019
gio/gtestdbus.c