mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-13 17:43:59 +02:00
Remove script collections before trying to add a new collection. If latter fails no invalid collections are removed
This commit is contained in:
@@ -770,6 +770,12 @@ JSResolver::loadCollections()
|
||||
|
||||
if ( d->capabilities.testFlag( Browsable ) )
|
||||
{
|
||||
|
||||
foreach ( Tomahawk::collection_ptr collection, m_collections )
|
||||
{
|
||||
emit collectionRemoved( collection );
|
||||
}
|
||||
|
||||
const QVariantMap collectionInfo = callOnResolver( "collection()" ).toMap();
|
||||
if ( collectionInfo.isEmpty() ||
|
||||
!collectionInfo.contains( "prettyname" ) ||
|
||||
@@ -779,11 +785,6 @@ JSResolver::loadCollections()
|
||||
const QString prettyname = collectionInfo.value( "prettyname" ).toString();
|
||||
const QString desc = collectionInfo.value( "description" ).toString();
|
||||
|
||||
foreach ( Tomahawk::collection_ptr collection, m_collections )
|
||||
{
|
||||
emit collectionRemoved( collection );
|
||||
}
|
||||
|
||||
m_collections.clear();
|
||||
// at this point we assume that all the tracks browsable through a resolver belong to the local source
|
||||
Tomahawk::ScriptCollection* sc = new Tomahawk::ScriptCollection( collectionInfo[ "id" ].toString(), SourceList::instance()->getLocal(), this );
|
||||
|
Reference in New Issue
Block a user