diff options
author | Rolf Eike Beer <eb@emlix.com> | 2019-01-21 13:18:15 +0100 |
---|---|---|
committer | Rolf Eike Beer <eb@emlix.com> | 2019-01-21 15:25:02 +0000 |
commit | 230921a7f00d368551ecf5d6457765eae03e9325 (patch) | |
tree | deafcbbe3553db326f18fbf32270b60769d3dae2 /src/gui | |
parent | 4faf011c3f5f4a739f4ddc54040b5319f7fe5d90 (diff) |
fix crash if no screens are available
Fixes: QTBUG-73166
Change-Id: I936672b7a09a540d21e6dcd371f5ffe1e5536b85
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/kernel/qhighdpiscaling.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/kernel/qhighdpiscaling.cpp b/src/gui/kernel/qhighdpiscaling.cpp index a455aa639d..22e46e0851 100644 --- a/src/gui/kernel/qhighdpiscaling.cpp +++ b/src/gui/kernel/qhighdpiscaling.cpp @@ -313,9 +313,12 @@ void QHighDpiScaling::updateHighDpiScaling() } m_active = m_globalScalingActive || m_screenFactorSet || m_pixelDensityScalingActive; - QPlatformScreen *primaryScreen = QGuiApplication::primaryScreen()->handle(); - qreal sf = screenSubfactor(primaryScreen); - QDpi primaryDpi = primaryScreen->logicalDpi(); + QScreen *primaryScreen = QGuiApplication::primaryScreen(); + if (!primaryScreen) + return; + QPlatformScreen *platformScreen = primaryScreen->handle(); + qreal sf = screenSubfactor(platformScreen); + QDpi primaryDpi = platformScreen->logicalDpi(); m_logicalDpi = QDpi(primaryDpi.first / sf, primaryDpi.second / sf); } |