summaryrefslogtreecommitdiffstats
path: root/src/corelib/io/qprocess_win.cpp
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2013-03-05 14:56:33 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-03-14 09:49:30 +0100
commit1e97a1ad8cbab43b8d4be44dd45805fc5c183cfe (patch)
tree28ab0a285d3089eb80e07c47b18e03c111ad0d83 /src/corelib/io/qprocess_win.cpp
parent17869a544e2a3b2cdc61dfe87a96a8c1a3286fff (diff)
QProcess/Win: stop pipe readers before closing the pipe handles
The pipe readers should not operate on closed handles. Change-Id: I6514b949e5ab2adf89633463fc599e8d02c43693 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'src/corelib/io/qprocess_win.cpp')
-rw-r--r--src/corelib/io/qprocess_win.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/corelib/io/qprocess_win.cpp b/src/corelib/io/qprocess_win.cpp
index 0fec8e4738..ab1f05777a 100644
--- a/src/corelib/io/qprocess_win.cpp
+++ b/src/corelib/io/qprocess_win.cpp
@@ -312,11 +312,13 @@ void QProcessPrivate::destroyChannel(Channel *channel)
}
} else if (channel == &stdoutChannel) {
if (stdoutReader) {
+ stdoutReader->stop();
stdoutReader->deleteLater();
stdoutReader = 0;
}
} else if (channel == &stderrChannel) {
if (stderrReader) {
+ stderrReader->stop();
stderrReader->deleteLater();
stderrReader = 0;
}