diff --git a/src/playlist/playlistmodel.cpp b/src/playlist/playlistmodel.cpp index 87abe994c..eef6de35f 100644 --- a/src/playlist/playlistmodel.cpp +++ b/src/playlist/playlistmodel.cpp @@ -47,10 +47,13 @@ PlaylistModel::loadPlaylist( const Tomahawk::playlist_ptr& playlist ) if ( !m_playlist.isNull() ) disconnect( m_playlist.data(), SIGNAL( revisionLoaded( Tomahawk::PlaylistRevision ) ), this, SLOT( onRevisionLoaded( Tomahawk::PlaylistRevision ) ) ); - emit beginRemoveRows( QModelIndex(), 0, rowCount( QModelIndex() ) - 1 ); - delete m_rootItem; - m_rootItem = new PlItem( 0, this ); - emit endRemoveRows(); + if ( rowCount( QModelIndex() ) ) + { + emit beginRemoveRows( QModelIndex(), 0, rowCount( QModelIndex() ) - 1 ); + delete m_rootItem; + m_rootItem = new PlItem( 0, this ); + emit endRemoveRows(); + } m_playlist = playlist; connect( playlist.data(), SIGNAL( revisionLoaded( Tomahawk::PlaylistRevision ) ), SLOT( onRevisionLoaded( Tomahawk::PlaylistRevision ) ) );