swap songs internally while sorting to keep their properties

This commit is contained in:
Andrzej Rybczak
2009-03-12 13:46:00 +01:00
parent 2bb0aaef18
commit 8a4ee22b61

View File

@@ -27,7 +27,6 @@
#include "playlist.h" #include "playlist.h"
#include "song.h" #include "song.h"
#include "status.h" #include "status.h"
#include "tag_editor.h"
using namespace Global; using namespace Global;
using std::vector; using std::vector;
@@ -242,6 +241,7 @@ void Playlist::Sort()
return; return;
} }
BlockUpdate = 1;
ShowMessage("Sorting playlist..."); ShowMessage("Sorting playlist...");
do do
{ {
@@ -251,6 +251,7 @@ void Playlist::Sort()
{ {
Mpd->Swap(playlist[i]->GetPosition(), i); Mpd->Swap(playlist[i]->GetPosition(), i);
std::swap(cmp[playlist[i]->GetPosition()], cmp[i]); std::swap(cmp[playlist[i]->GetPosition()], cmp[i]);
w->Swap(playlist[i]->GetPosition(), i);
} }
cmp[i]->SetPosition(i); cmp[i]->SetPosition(i);
} }