From 4a6618ca68ec020d96405c00182320c2b3dd8210 Mon Sep 17 00:00:00 2001 From: Alex Trotsenko Date: Sat, 11 Sep 2021 19:52:43 +0300 Subject: QProcess: do not emit aboutToClose() twice This signal is emitted by the QIODevice itself, so we don't have to emit it from QProcess::close(). Change-Id: I9165b3eebadc17a66cc834d5ef54441d13f23d7d Reviewed-by: Thiago Macieira (cherry picked from commit efb90f6e7ed3e8d4f7b6c0fb96012cb3a9a9d037) Reviewed-by: Qt Cherry-pick Bot --- src/corelib/io/qprocess.cpp | 1 - tests/auto/corelib/io/qprocess/tst_qprocess.cpp | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/corelib/io/qprocess.cpp b/src/corelib/io/qprocess.cpp index f03fc067cf..2d179237c4 100644 --- a/src/corelib/io/qprocess.cpp +++ b/src/corelib/io/qprocess.cpp @@ -1669,7 +1669,6 @@ qint64 QProcess::processId() const void QProcess::close() { Q_D(QProcess); - emit aboutToClose(); while (waitForBytesWritten(-1)) ; kill(); diff --git a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp index 6f9fbcbc47..02a8b67456 100644 --- a/tests/auto/corelib/io/qprocess/tst_qprocess.cpp +++ b/tests/auto/corelib/io/qprocess/tst_qprocess.cpp @@ -835,6 +835,7 @@ void tst_QProcess::closeReadChannel() void tst_QProcess::openModes() { QProcess proc; + QSignalSpy spyAboutToClose(&proc, &QProcess::aboutToClose); QVERIFY(!proc.isOpen()); QCOMPARE(proc.openMode(), QProcess::NotOpen); proc.start("testProcessEcho3/testProcessEcho3"); @@ -870,6 +871,7 @@ void tst_QProcess::openModes() QVERIFY(!proc.isOpen()); QVERIFY(!proc.isReadable()); QVERIFY(!proc.isWritable()); + QCOMPARE(spyAboutToClose.count(), 1); QCOMPARE(proc.state(), QProcess::NotRunning); } -- cgit v1.2.3