From 804b5e7ed8d9d2305a0e47da4a7de1a77631630a Mon Sep 17 00:00:00 2001 From: "Uwe L. Korn" Date: Sun, 1 Jun 2014 18:55:36 +0100 Subject: [PATCH] Fix crash on misbehaving VA albums --- src/libtomahawk/playlist/ColumnView.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/playlist/ColumnView.cpp b/src/libtomahawk/playlist/ColumnView.cpp index 79b3e8292..aa1fa251f 100644 --- a/src/libtomahawk/playlist/ColumnView.cpp +++ b/src/libtomahawk/playlist/ColumnView.cpp @@ -510,7 +510,12 @@ ColumnView::onUpdatePreviewWidget( const QModelIndex& index ) m_previewWidget->setQuery( item->result()->toQuery() ); QList< int > widths = columnWidths(); - const int previewWidth = viewport()->width() - widths.at( 0 ) - widths.at( 1 ) - widths.at( 2 ); + int previewWidth = viewport()->width() - widths.at( 0 ) - widths.at( 1 ) - widths.at( 2 ); + // Sometimes we do not have 3 columns because of wrong usage of the ColumnView. + // At least do not crash. + for (int i = 0; i < 3 && i < widths.length(); i++ ) { + previewWidth -= widths.at( i ); + } widths.removeLast(); widths << qMax( previewWidth, m_previewWidget->minimumSize().width() + 32 ); setColumnWidths( widths );