Details
-
Type:
Bug
-
Status: Closed
-
Priority:
P1: Critical
-
Resolution: Done
-
Affects Version/s: 5.15.1
-
Fix Version/s: 5.15.2, 6.0.0 Alpha
-
Component/s: Core: Threads
-
Labels:None
-
Platform/s:
-
Commits:fe36d47b371b71ad5fec30d4b5d7bf0baa0205ea (qt/qtbase/dev) a5e6c50ef45e9b75867e1730c510f5739b00f176 (qt/qtbase/5.15)
Description
There is a crash in QThreadPool::clear() when auto-deleting QRunnables are being used.
Attachment a very simple example project which does this in a loop:
- Calls QThreadPool::clear()
- Starts a bunch of runnables (~500) in QThreadPool. QRunnable::autoDelete() = true
- goto 1
After a few iterations it crashes on QThreadPool::clear(). This happens consistently
I think the culprit is this commit. I've tried reverting it and the crash disappears.