diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2021-02-20 09:43:34 -0800 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2021-02-21 18:47:11 -0800 |
commit | 089bcb007454fe44224139b2d0a0e4145f209b15 (patch) | |
tree | f92a515ed8894ca80218e6f802aee363c29789ce /src | |
parent | f4e3b073b3d2a50133d734dd604bff21f061a3e6 (diff) |
QProcess::startDetached/Unix: remove unnecessary ignoring of SIGPIPE
This is unnecessary because we can only get SIGPIPE if the reading end
of the pipe is closed. And that can only happen if the parent process
has exited, meaning there's no one to read our message anyway.
Change-Id: Ic90d8429a0eb4837971dfffd1664ec6821993ada
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/io/qprocess_unix.cpp | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp index 88cd73b102..f235ab1320 100644 --- a/src/corelib/io/qprocess_unix.cpp +++ b/src/corelib/io/qprocess_unix.cpp @@ -956,22 +956,12 @@ bool QProcessPrivate::startDetached(qint64 *pid) else qt_safe_execv(argv[0], argv); - struct sigaction noaction; - memset(&noaction, 0, sizeof(noaction)); - noaction.sa_handler = SIG_IGN; - ::sigaction(SIGPIPE, &noaction, nullptr); - // '\1' means execv failed char c = '\1'; qt_safe_write(startedPipe[1], &c, 1); qt_safe_close(startedPipe[1]); ::_exit(1); } else if (doubleForkPid == -1) { - struct sigaction noaction; - memset(&noaction, 0, sizeof(noaction)); - noaction.sa_handler = SIG_IGN; - ::sigaction(SIGPIPE, &noaction, nullptr); - // '\2' means internal error char c = '\2'; qt_safe_write(startedPipe[1], &c, 1); |