X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fsighandler.c;h=ceaa4842286ec14f27567fdf56c29188853719f9;hb=05fb9096362e788f032de6eccea2d7fea03317ab;hp=546b73d91104d2e19941b0f1f370ecc616dd8054;hpb=0148dc6fd30a41b7005ccdf6cda921b34c1ac592;p=i3%2Fi3 diff --git a/src/sighandler.c b/src/sighandler.c index 546b73d9..ceaa4842 100644 --- a/src/sighandler.c +++ b/src/sighandler.c @@ -4,8 +4,8 @@ * vim:ts=4:sw=4:expandtab * * i3 - an improved dynamic tiling window manager - * © 2009-2011 Michael Stapelberg and contributors (see also: LICENSE) - * © 2009-2010 Jan-Erik Rediger + * © 2009 Michael Stapelberg and contributors (see also: LICENSE) + * © 2009 Jan-Erik Rediger * * sighandler.c: Interactive crash dialog upon SIGSEGV/SIGABRT/SIGFPE (offers * to restart inplace). @@ -70,8 +70,14 @@ static int backtrace(void) { int stdin_pipe[2], stdout_pipe[2]; - pipe(stdin_pipe); - pipe(stdout_pipe); + if (pipe(stdin_pipe) == -1) { + ELOG("Failed to init stdin_pipe\n"); + return -1; + } + if (pipe(stdout_pipe) == -1) { + ELOG("Failed to init stdout_pipe\n"); + return -1; + } /* close standard streams in case i3 is started from a terminal; gdb * needs to run without controlling terminal for it to work properly in @@ -321,5 +327,5 @@ void setup_signal_handler(void) { sigaction(SIGABRT, &action, NULL) == -1 || sigaction(SIGFPE, &action, NULL) == -1 || sigaction(SIGSEGV, &action, NULL) == -1) - ELOG("Could not setup signal handler"); + ELOG("Could not setup signal handler.\n"); }