diff --git a/src/sourcetree/items/collectionitem.cpp b/src/sourcetree/items/collectionitem.cpp index 7f034a0ce..6cbc7c156 100644 --- a/src/sourcetree/items/collectionitem.cpp +++ b/src/sourcetree/items/collectionitem.cpp @@ -192,6 +192,14 @@ CollectionItem::playlistDeletedInternal( SourceTreeItem* parent, const T& p ) break; } } + + if( parent->children().isEmpty() && parent->parent() ) // Don't leave an empty Playlist or Station category + { + int idx = parent->parent()->children().indexOf( parent ); + parent->parent()->beginRowsRemoved( idx, idx ); + parent->parent()->removeChild( parent ); + parent->parent()->endRowsRemoved(); + } }