diff options
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index de4ae0a5d3..8e3fd48546 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -1180,8 +1180,9 @@ void QWidgetPrivate::init(QWidget *parentWidget, Qt::WindowFlags f) } #elif defined(Q_WS_QPA) if (desktopWidget) { - int screen = desktopWidget->d_func()->topData()->screenIndex; - q->windowHandle()->setScreen(QGuiApplication::screens().value(screen, 0)); + const int screen = desktopWidget->d_func()->topData()->screenIndex; + if (QWindow *window = q->windowHandle()) + window->setScreen(QGuiApplication::screens().value(screen, 0)); } #else Q_UNUSED(desktopWidget); |