summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2023-03-16 18:10:34 -0700
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-04-26 05:11:22 +0000
commit1c79b94a6c6e7ca1a852ee9bb44eefafd033eaa1 (patch)
tree863b987954c18acda58efbe7ddeffbc2f6bd719c
parentc0791c1d0808ea35c02a6cd3d79bd6bae55cf64c (diff)
downloadqtbase-1c79b94a6c6e7ca1a852ee9bb44eefafd033eaa1.tar.gz
QProcess/Unix: don't overwrite openChannels() error message
Change-Id: Icfe44ecf285a480fafe4fffd174d0fa4701b0076 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 956b2495285251e4840ec32885ffa2cfbb7bd79c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/corelib/io/qprocess_unix.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp
index 449fd14c5c..98a716192e 100644
--- a/src/corelib/io/qprocess_unix.cpp
+++ b/src/corelib/io/qprocess_unix.cpp
@@ -421,8 +421,12 @@ void QProcessPrivate::startProcess()
#endif
// Initialize pipes
- if (!openChannels() || qt_create_pipe(childStartedPipe) != 0) {
- setErrorAndEmit(QProcess::FailedToStart, qt_error_string(errno));
+ if (!openChannels()) {
+ // openChannel sets the error string
+ return;
+ }
+ if (qt_create_pipe(childStartedPipe) != 0) {
+ setErrorAndEmit(QProcess::FailedToStart, "pipe: "_L1 + qt_error_string(errno));
cleanup();
return;
}