summaryrefslogtreecommitdiffstats
path: root/libQtSpotify/qspotifyplaylist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libQtSpotify/qspotifyplaylist.cpp')
-rw-r--r--libQtSpotify/qspotifyplaylist.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/libQtSpotify/qspotifyplaylist.cpp b/libQtSpotify/qspotifyplaylist.cpp
index 4a541bd..d904ac9 100644
--- a/libQtSpotify/qspotifyplaylist.cpp
+++ b/libQtSpotify/qspotifyplaylist.cpp
@@ -367,8 +367,11 @@ bool QSpotifyPlaylist::event(QEvent *e)
int newpos = ev->newPosition();
QVector<QSpotifyTrack*> tracks;
for (int i = 0; i < positions.count(); ++i) {
- tracks.append(m_trackList->m_tracks[positions.at(i)]);
- m_trackList->m_tracks.replace(positions.at(i), 0);
+ int pos = positions.at(i);
+ if (pos < 0 || pos >= m_trackList->m_tracks.count())
+ continue;
+ tracks.append(m_trackList->m_tracks[pos]);
+ m_trackList->m_tracks.replace(pos, 0);
}
for (int i = 0; i < tracks.count(); ++i)
m_trackList->m_tracks.insert(newpos++, tracks.at(i));