From 498d7052de03fdd2ec49c40abfec0e4212a71af9 Mon Sep 17 00:00:00 2001 From: Leo Franchi Date: Fri, 19 Aug 2011 15:45:21 -0400 Subject: [PATCH] TWK-415: Don't crash if the trackproxymodel has an invalid current track --- src/libtomahawk/audio/audioengine.cpp | 2 +- src/libtomahawk/playlist/trackproxymodel.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libtomahawk/audio/audioengine.cpp b/src/libtomahawk/audio/audioengine.cpp index 9310ea43d..cc71e6a93 100644 --- a/src/libtomahawk/audio/audioengine.cpp +++ b/src/libtomahawk/audio/audioengine.cpp @@ -212,7 +212,7 @@ AudioEngine::canGoNext() return false; if ( !m_currentTrack.isNull() && !m_playlist.data()->hasNextItem() && - m_currentTrack->id() == m_playlist.data()->currentItem()->id() ) + ( m_playlist.data()->currentItem().isNull() || ( m_currentTrack->id() == m_playlist.data()->currentItem()->id() ) ) ) { //For instance, when doing a catch-up while listening along, but the person //you're following hasn't started a new track yet...don't do anything diff --git a/src/libtomahawk/playlist/trackproxymodel.cpp b/src/libtomahawk/playlist/trackproxymodel.cpp index cf1c5bd94..2a4aba5f3 100644 --- a/src/libtomahawk/playlist/trackproxymodel.cpp +++ b/src/libtomahawk/playlist/trackproxymodel.cpp @@ -177,7 +177,7 @@ Tomahawk::result_ptr TrackProxyModel::currentItem() const { TrackModelItem* item = itemFromIndex( mapToSource( currentIndex() ) ); - if ( item && item->query()->playable() ) + if ( item && !item->query().isNull() && item->query()->playable() ) return item->query()->results().at( 0 ); return Tomahawk::result_ptr(); }