aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-10-20 13:18:50 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2017-10-20 13:03:49 +0000
commit53c4bc2d1004fe963759b4009508bbc3e3fbca3e (patch)
tree556138e77b4c2db74c13d14eba87083579d59b73
parent882741541d0560c68cdabc9f24e61a13d3de2033 (diff)
QQuickDialogButtonBox: fix potential crash in updateLayout()
Don't dereference the contentItem pointer without checking. We can use availableWidth/Height as a fallback. Task-number: QTBUG-63898 Change-Id: I1ef7704e96e233036eacd6e3586f5bd0c72fac2d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
-rw-r--r--src/quicktemplates2/qquickdialogbuttonbox.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/quicktemplates2/qquickdialogbuttonbox.cpp b/src/quicktemplates2/qquickdialogbuttonbox.cpp
index 3c422268..4b414160 100644
--- a/src/quicktemplates2/qquickdialogbuttonbox.cpp
+++ b/src/quicktemplates2/qquickdialogbuttonbox.cpp
@@ -213,8 +213,8 @@ void QQuickDialogButtonBoxPrivate::updateLayout()
const int valign = alignment & Qt::AlignVertical_Mask;
QVector<QQuickAbstractButton *> buttons;
- const qreal maxItemWidth = (contentItem->width() - qMax(0, count - 1) * spacing) / count;
- const qreal maxItemHeight = contentItem->height();
+ const qreal maxItemWidth = ((contentItem ? contentItem->width() : q->availableWidth()) - qMax(0, count - 1) * spacing) / count;
+ const qreal maxItemHeight = contentItem ? contentItem->height() : q->availableHeight();
for (int i = 0; i < count; ++i) {
QQuickItem *item = q->itemAt(i);