diff options
author | Tasuku Suzuki <stasuku@gmail.com> | 2013-05-01 21:47:54 +0900 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-05-03 11:34:50 +0200 |
commit | 0cde4af617cf293c17428673cd28774513cd4615 (patch) | |
tree | e1769635dd762fbdcdd8ba306f0c95d89b680436 /src/layouts/qquicklayout.cpp | |
parent | c763c70f40b6dc814a51d6311ea372556a0751c8 (diff) | |
download | qtquickcontrols-0cde4af617cf293c17428673cd28774513cd4615.tar.gz |
Fix crash when Layout.fillWidth is put into QtObject {}
Change-Id: I89e86cf0fc3f6421e1dadd41771dfc689dcdeb8a
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Diffstat (limited to 'src/layouts/qquicklayout.cpp')
-rw-r--r-- | src/layouts/qquicklayout.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/layouts/qquicklayout.cpp b/src/layouts/qquicklayout.cpp index c54d94e7..6d36a92e 100644 --- a/src/layouts/qquicklayout.cpp +++ b/src/layouts/qquicklayout.cpp @@ -401,16 +401,19 @@ void QQuickLayoutAttached::invalidateItem() QQuickLayout *QQuickLayoutAttached::parentLayout() const { - QQuickItem *parentItem = item()->parentItem(); - if (qobject_cast<QQuickLayout *>(parentItem)) - return static_cast<QQuickLayout *>(parentItem); + QQuickItem *parentItem = item(); + if (parentItem) { + parentItem = parentItem->parentItem(); + return qobject_cast<QQuickLayout *>(parentItem); + } else { + qWarning("Layout must be attached to Item elements"); + } return 0; } QQuickItem *QQuickLayoutAttached::item() const { - Q_ASSERT(qobject_cast<QQuickItem*>(parent())); - return static_cast<QQuickItem*>(parent()); + return qobject_cast<QQuickItem *>(parent()); } |