Go to file
Joerg Bornemann 5c89e2eeee Rework QWindowsPipeReader
The use of QWinOverlappedIoNotifier in QWindowsPipeReader restricts us
in the following ways:
  - The handle that gets assigned to QWinOverlappedIoNotifier is forever
    tied to an I/O completion port.
  - Other notification mechanisms like I/O completion routines of
    WriteFileEx do not work with such a handle.
  - No other QWinOverlappedIoNotifier can be registered for this handle.

To achieve the ultimate goal of making QWindowsPipeWriter thread-free
(to fix QTBUG-23378 and QTBUG-38185) we remove the usage of
QWinOverlappedIoNotifier from QWindowsPipeReader and use the
ReadFileEx API instead.
This has the additional advantage of removing the need for any thread
synchronization, as the I/O completion routine runs in the thread that
ReadFileEx was called on, leading to simpler and faster code.

Change-Id: I05c983e1f1e49d7dd27e3b77a47f87cae9c3f4c6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-03-17 16:52:00 +00:00
bin syncqt.pl: say "ERROR" when it's an error 2015-12-08 06:32:24 +00:00
config.tests alsatest: Fix the check to treat alsalib 1.1.x as correct version 2016-03-07 14:37:29 +00:00
dist Update the Qt 5.5.1 changelog for qtbase 2015-09-23 06:49:28 +00:00
doc Remove WebEngine examples metadata 2016-03-07 14:24:57 +00:00
examples Skip spurious .toLower() on returns of QUrl::scheme() 2016-03-10 15:00:59 +00:00
lib
mkspecs support relative paths in configure -R 2016-03-16 15:09:44 +00:00
qmake de-duplicate condition for default install target 2016-03-16 15:09:57 +00:00
src Rework QWindowsPipeReader 2016-03-17 16:52:00 +00:00
tests Manual High DPI test: Create Dnd pixmap with device pixel ratio. 2016-03-16 14:40:15 +00:00
tools Allow overriding Android NDK host on Windows 2016-03-10 11:57:39 +00:00
util Don't use QStringLiteral in comparisons 2016-01-28 18:00:47 +00:00
.gitattributes
.gitignore rewrite qtAddToolEnv() 2016-01-08 09:36:13 +00:00
.qmake.conf Bump version 2016-02-18 07:38:22 +00:00
.tag
configure delay application of configure -D/-I/-L/-l/-R flags 2016-03-16 15:08:23 +00:00
configure.bat Move the official Qt version from qglobal.h to .qmake.conf 2015-10-14 20:12:57 +00:00
header.BSD Updated BSD licensed file headers 2015-02-15 07:41:17 +00:00
header.COMM Add header template for commercial only modules 2015-10-19 10:37:18 +00:00
header.FDL Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL3 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL3-COMM Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL21 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL-ONLY Update copyright headers 2015-02-11 06:49:51 +00:00
INSTALL Doc: Update links in INSTALL file 2015-02-16 09:06:41 +00:00
LGPL_EXCEPTION.txt Update copyright headers 2015-02-11 06:49:51 +00:00
LICENSE.FDL
LICENSE.GPLv3 fix up license references 2015-08-13 11:13:09 +00:00
LICENSE.LGPLv3 Bump copyright year to 2016 2016-01-29 13:30:04 +00:00
LICENSE.LGPLv21 Bump copyright year to 2016 2016-01-29 13:30:04 +00:00
LICENSE.PREVIEW.COMMERCIAL Update copyright headers 2015-02-11 06:49:51 +00:00
qtbase.pro Install fixqt4headers.pl script 2015-11-14 12:46:50 +00:00
sync.profile make a proper header-only module for QtZlib 2015-11-17 20:22:17 +00:00