qt5base-lts/tests/auto/corelib
Marc Mutz b4689401a5 tst_QThreadPool: don't deadlock when a cancel() test fails
We keep the runnables from finishing by having them block
on a QSemaphore::acquire() call inside run().

If we fail a test that precedes the call to sem.release()
further into the test, the early return will cause the
thread pool to be destroyed, which will then attempt to
wait for the runnables to finished, which, in turn wait
for the semaphore to be released.

-> dead lock

Fix by introducing a RAII object to release the semaphore
with a sufficiently large number to unblock all runnables.
That number will in some situations be too large, but that
does not matter.

Change-Id: I1ec7e29b37bc36309e93e6e30708cc7db3c9579c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-02-15 11:25:48 +00:00
..
animation Stabilize tst_QPropertyAnimation::noStartValue() 2017-01-25 11:36:41 +00:00
codecs tst_utf8: remove duplicate nonCharacters() data 2017-01-10 18:39:31 +00:00
global tst_qhooks: test that it's possible to chain multiple hooks together 2016-11-18 15:22:32 +00:00
io Reset QFileDevicePrivate::cachedSize on file close 2017-02-06 07:36:24 +00:00
itemmodels QIPM: Persist model indexes after emitting layoutChange, not before 2016-12-21 01:37:50 +00:00
json Merge remote-tracking branch 'origin/5.7' into 5.8 2016-11-16 12:35:36 +01:00
kernel 50 ms isn't enough for the CI, so increase to 100 ms 2017-02-15 08:09:57 +00:00
mimetypes tst_QMimeDatabase: increase timeout 2017-02-14 13:51:12 +00:00
plugin Fix QLibrary::isLibrary on Apple platforms 2017-02-12 18:25:42 +00:00
statemachine Merge "Merge remote-tracking branch 'origin/5.6' into dev" into refs/staging/dev 2016-01-26 11:27:37 +00:00
thread tst_QThreadPool: don't deadlock when a cancel() test fails 2017-02-15 11:25:48 +00:00
tools Revert "Add tests for QCollatorSortKey" 2017-02-12 08:15:48 +00:00
xml tests/auto/corelib/xml: cleanup 2016-08-27 05:09:16 +00:00
corelib.pro Add support for Apple tvOS 2016-05-17 16:11:23 +00:00