From 5eab554227597568a799edb9e9e01563e35e8974 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 14 Jan 2013 12:11:45 +0100 Subject: Check for existence of QWindow in QApplication::isBlockedByModal. Warn if window == 0 is passed in QApplicationPrivate::isWindowBlocked(). Task-number: QTBUG-28637 Change-Id: I1213ea371813eeb90f962cc39235ddfccc663d45 Reviewed-by: Jing Bai Reviewed-by: Joerg Bornemann --- src/widgets/kernel/qapplication.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index ed6262ce93..c66a4487b4 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -2217,12 +2217,17 @@ Q_WIDGETS_EXPORT bool qt_tryModalHelper(QWidget *widget, QWidget **rettop) bool QApplicationPrivate::isBlockedByModal(QWidget *widget) { widget = widget->window(); - return self->isWindowBlocked(widget->windowHandle()); + QWindow *window = widget->windowHandle(); + return window && self->isWindowBlocked(window); } bool QApplicationPrivate::isWindowBlocked(QWindow *window, QWindow **blockingWindow) const { QWindow *unused = 0; + if (!window) { + qWarning().nospace() << "window == 0 passed."; + return false; + } if (!blockingWindow) blockingWindow = &unused; -- cgit v1.2.3