summaryrefslogtreecommitdiffstats
path: root/src/corelib/Qt5CoreConfigExtras.cmake.in
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@theqtcompany.com>2016-02-24 12:36:36 +0100
committerJoerg Bornemann <joerg.bornemann@theqtcompany.com>2016-02-29 17:52:58 +0000
commit6f75c189e1e5651b716afb316c801d080001c155 (patch)
tree02c815fc2e40c6d3eb23ebefbb04d4713f7e88c7 /src/corelib/Qt5CoreConfigExtras.cmake.in
parentc7e213334bb70fb023e2bdc3a590dfd4605b73ba (diff)
Fix crash in QProcess::waitForFinished on Windows
Suppose the user connects QProcess::readyReadStandardOutput with a slot that calls QCoreApplication::processEvents. Assume the event loop did not handle events between QProcess::start and QProcess::waitForFinished. The process writes to stdout and exits. QProcessPrivate::waitForFinished calls drainOutputPipes which calls QWindowsPipeWriter::waitForReadyRead. This in turn will trigger _q_processDied via the readyRead signal and processEvents. _q_processDied will delete the pid object and set pid to null. After drainOutputPipes returns, _q_processDied is called again but it must not be called if pid is already destroyed. Prevent calling _q_processDied if pid is null. Task-number: QTBUG-48697 Change-Id: Iee047938ee1529057a1a43d71f4e882750903c7e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'src/corelib/Qt5CoreConfigExtras.cmake.in')
0 files changed, 0 insertions, 0 deletions