From 8341e3cb59edeb2bc65f0971bb0de357c8442be7 Mon Sep 17 00:00:00 2001
From: Xavier L'Heureux <xavier.lheureux@icloud.com>
Date: Fri, 2 Aug 2019 11:39:03 -0400
Subject: [PATCH] improv: Remove the buggy SIGPIPE handler

---
 src/lib/shell/mod.rs | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/src/lib/shell/mod.rs b/src/lib/shell/mod.rs
index 8f11e324..479af14c 100644
--- a/src/lib/shell/mod.rs
+++ b/src/lib/shell/mod.rs
@@ -48,7 +48,6 @@ use nix::{
 };
 use std::{
     fs::File,
-    io::{self, Write},
     mem,
     ops::{Deref, DerefMut},
     rc::Rc,
@@ -178,17 +177,10 @@ impl<'a> Shell<'a> {
             signals::PENDING.store(signal as usize, Ordering::SeqCst);
         }
 
-        extern "C" fn sigpipe_handler(signal: i32) {
-            let _ = io::stdout().flush();
-            let _ = io::stderr().flush();
-            unsafe { nix::libc::_exit(127 + signal) };
-        }
-
         unsafe {
             let _ = signal::signal(signal::Signal::SIGHUP, SigHandler::Handler(handler));
             let _ = signal::signal(signal::Signal::SIGINT, SigHandler::Handler(handler));
             let _ = signal::signal(signal::Signal::SIGTERM, SigHandler::Handler(handler));
-            let _ = signal::signal(signal::Signal::SIGPIPE, SigHandler::Handler(sigpipe_handler));
         }
     }
 
-- 
GitLab