Go to file
Thiago Macieira 3ec57107ce Windows: stop using _beginthreadex on regular builds
This commit also reverts fecaa6aae8.

The Microsoft documentation says _beginthreadex and _endthreadex are
used to initialize the C/C++ runtime and are necessary when linking to
libcmt(d).lib (that is, when using the -MT or -MTd options). For regular
builds linking against the .dll runtime, there should be no impact.
Inspection of the CRT source code which gets installed with Visual
Studio or Windows SDK proves that.

It's preferable to use CreateThread directly as _endthreadex will try to
call FreeLibraryAndExitThread, which can cause a deadlock if we try to
wait for the thread to exit from a global destructor.

For -MT builds, since there can be no DLLs, it's not a problem to
continue to use _beginthreadex and follow Microsoft's recommendation.

Task-number: QTBUG-53031
Change-Id: Id5480807d25e49e78b79ffff144af62c3c59dfe0
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-06-02 22:16:47 +00:00
bin Merge remote-tracking branch 'origin/5.6.0' into 5.7 2016-03-07 17:08:56 +01:00
config.tests Merge remote-tracking branch 'origin/5.7' into dev 2016-05-23 21:09:46 +02:00
dist Add changelog for 5.6.0 2016-03-01 11:23:43 +00:00
doc Doc: Highlight Quick Controls 2 - Gallery example 2016-05-09 09:13:40 +00:00
examples Merge remote-tracking branch 'origin/5.7' into dev 2016-05-23 21:09:46 +02:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Remove -audio-backend command line option 2016-05-31 19:15:19 +00:00
qmake add $$sorted() function. 2016-05-25 06:19:16 +00:00
src Windows: stop using _beginthreadex on regular builds 2016-06-02 22:16:47 +00:00
tests Blacklisting pendingCallWhenDisconnected on OpenSUSE 42.1 2016-06-02 10:12:50 +00:00
tools Remove -audio-backend command line option 2016-05-31 19:15:19 +00:00
util Re-generate QLocale data from CLDR v29 2016-04-08 03:51:18 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore normalize structure of plugandpaint example 2016-05-03 10:25:18 +00:00
.qmake.conf Merge remote-tracking branch 'origin/5.7' into dev 2016-05-23 21:09:46 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
config_help.txt Turn off libproxy support by default 2016-05-27 20:03:55 +00:00
configure Get rid of dead code 2016-05-31 19:15:32 +00:00
configure.bat Add initial clang-cl support to Qt 2016-02-11 12:54:06 +00:00
header.BSD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.BSD-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.COMM Add header template for commercial only modules 2015-10-19 10:37:18 +00:00
header.FDL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.FDL-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL Add new license header templates and license files 2016-01-14 20:43:46 +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-NOGPL2 Add new license header templates and license files 2016-01-14 20:43:46 +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 Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPLv3 fix up license references 2015-08-13 11:13:09 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +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 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
qtbase.pro Remove the -qconfig command line argument 2016-04-19 14:01:40 +00:00
sync.profile make a proper header-only module for QtZlib 2015-11-17 20:22:17 +00:00