diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-10-12 09:44:27 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2020-10-12 16:28:47 +0200 |
commit | b89d68f8610fa74c90905ffde4e1479ac78ddf45 (patch) | |
tree | f31316e945e8c03b82f2f7ecea93b72e2fce8dc1 /src/gui/painting/qimagescale_sse4.cpp | |
parent | 1dc58eb40ae07a191c37f583bc0a8a1a3f5bca4f (diff) |
Protect QImage work on shutdown
If the thread pool was not created, or already deleted, make sure
the QImage routines can still run as they could before.
Fixes: QTBUG-87320
Change-Id: I4105a68b6ae0637faf82cdda5f5ae44298759396
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
(cherry picked from commit 0aa8925f1acd47cadc71483cac97d202444d15db)
Diffstat (limited to 'src/gui/painting/qimagescale_sse4.cpp')
-rw-r--r-- | src/gui/painting/qimagescale_sse4.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/painting/qimagescale_sse4.cpp b/src/gui/painting/qimagescale_sse4.cpp index 70cfa08d95..a5c9e68fad 100644 --- a/src/gui/painting/qimagescale_sse4.cpp +++ b/src/gui/painting/qimagescale_sse4.cpp @@ -60,7 +60,7 @@ static inline void multithread_pixels_function(QImageScaleInfo *isi, int dh, con int segments = (qsizetype(isi->sh) * isi->sw) / (1<<16); segments = std::min(segments, dh); QThreadPool *threadPool = QThreadPool::globalInstance(); - if (segments > 1 && !threadPool->contains(QThread::currentThread())) { + if (segments > 1 && threadPool && !threadPool->contains(QThread::currentThread())) { QSemaphore semaphore; int y = 0; for (int i = 0; i < segments; ++i) { |