Bug 266249

Summary: Deleting incorrect folders when in Saved playlist
Product: [Applications] amarok Reporter: Pierre Dumuid <pmdumuid>
Component: Playlists/Saved PlaylistsAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED FIXED    
Severity: normal CC: bart.cerneels
Priority: NOR    
Version: 2.4-GIT   
Target Milestone: 2.4.1   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 2.4.1
Sentry Crash Report:

Description Pierre Dumuid 2011-02-14 01:08:56 UTC
Version:           2.4-GIT (using KDE 4.6.0) 
OS:                Linux

When in "Folder view", deleting selected folders doesn't delete folders correctly!



Reproducible: Always

Steps to Reproduce:
1. Navigate to "playlists/Saved playlists"
2. Ensure "Merged view" is selected, and no entries are listed in playlist.
3. Click "Add Folder" multiple times. (say 6 times) so that the playlist is populated with:

New Folder
New Folder (1)
New Folder (2)
New Folder (3)
New Folder (4)
New Folder (5)

4. Select all the folders, and right click, and select "Delete Folder".


Actual Results:  
Not all folders deleted, with the following remaining:
New Folder (1)
New Folder (3)
New Folder (5)

remain?!  Deleting all again results in folder, "New Folder (3)" remaining.

Expected Results:  
All folders should be deleted!


Various combinations of deleting folders arrives at different results:

Annoyingly it can actually delete folders I didn't select: i.e. choosing to delete 0,2,4 will actually deletes folders 0, and 3 (the later I didn't choose)

Also, when trying to work out how the code works, and fix it myself, I found that clearing the data maps:

      //don't clear the data maps since most of it will probably be needed again.
++    m_groupMaps.clear();


(what ever that is??!!) in QtGroupingProxy::buildTree() seems to alleviate the situation, but I don't know the code very well to fix the problem..

This bug is also reproducable when deleting folders from the "Podcasts" "Merged View"
Comment 1 Bart Cerneels 2011-03-09 17:55:41 UTC
Git commit 67ec0da9dd03700f62eee530ce1b002f759c0520 by Bart Cerneels.
Committed on 09/03/2011 at 17:53.
Pushed by shanachie into branch 'master'.

Use persistentindexes for deleteAction.

While deleting groups the indexes got out of date. QPersistentModelIndex prevents that.

BUG:266249

M  +7    -4    src/browsers/playlistbrowser/PlaylistsInFoldersProxy.cpp     
M  +4    -0    src/browsers/playlistbrowser/PlaylistsInFoldersProxy.h     

http://commits.kde.org/amarok/67ec0da9dd03700f62eee530ce1b002f759c0520