summaryrefslogtreecommitdiff
path: root/src/lightdm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lightdm.c')
-rw-r--r--src/lightdm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lightdm.c b/src/lightdm.c
index 32ab3c05..610c5aee 100644
--- a/src/lightdm.c
+++ b/src/lightdm.c
@@ -1214,6 +1214,12 @@ main (int argc, char **argv)
};
GError *error = NULL;
+ /* Disable the SIGPIPE handler - this is a stupid Unix hangover behaviour.
+ * We will handle piples / sockets being closed instead of having the whole daemon be killed...
+ * http://stackoverflow.com/questions/8369506/why-does-sigpipe-exist
+ */
+ signal (SIGPIPE, SIG_IGN);
+
/* When lightdm starts sessions it needs to run itself in a new mode */
if (argc >= 2 && strcmp (argv[1], "--session-child") == 0)
return session_child_run (argc, argv);