aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/main.c b/main.c
index 57022442..2fd22d4b 100644
--- a/main.c
+++ b/main.c
@@ -183,8 +183,17 @@ void toybox_main(void)
xputc('\n');
}
+static void shutup_sigpipe(int i)
+{
+ // exit success from sigpipe to mollify overzealous crash reporting.
+ _exit(0);
+}
+
int main(int argc, char *argv[])
{
+ if (CFG_TOYBOX_ON_ANDROID) signal(SIGPIPE, shutup_sigpipe);
+ else signal(SIGPIPE, SIG_IGN);
+
if (CFG_TOYBOX) {
// Trim path off of command name
*argv = basename(*argv);