on xenial help sign in
LVWPH: Do not crash on showHeader if we don't have a header

. Approved by PS Jenkins bot, Michał Sawicz.

commit826c2edf8938a70fd8de75a61794555bc7557a85 authorAlbert Astals <albert.astals@canonical.com> dateWed 3 Jul 2013, 08:31 (13 years ago) parente37e13c23ccca6
2 files changed+9
plugins/ListViewWithPageHeader/listviewwithpageheader.cpp+3 tests/plugins/ListViewWithPageHeader/listviewwithpageheadertest.cpp+6
plugins/ListViewWithPageHeader/listviewwithpageheader.cpp+3
@@ -342,6 +342,9 @@ void ListViewWithPageHeader::positionAtBeginning()
342342
343343void ListViewWithPageHeader::showHeader()
344344{
345+ if (!m_headerItem)
346+ return;
347+
345348 auto to = qMax(-minYExtent(), contentY() - m_headerItem->height() + m_headerItemShownHeight);
346349 if (to != contentY()) {
347350 m_headerShowAnimation->setTo(to);
tests/plugins/ListViewWithPageHeader/listviewwithpageheadertest.cpp+6
@@ -1299,6 +1299,12 @@ private Q_SLOTS:
12991299 QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
13001300 }
13011301
1302+ void testCrashShowHeaderWithNoHeader()
1303+ {
1304+ lvwph->setHeader(nullptr);
1305+ lvwph->showHeader();
1306+ }
1307+
13021308private:
13031309 QQuickView *view;
13041310 ListViewWithPageHeader *lvwph;