summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@nokia.com>2011-12-11 09:58:45 +0100
committerYoann Lopes <yoann.lopes@nokia.com>2011-12-11 09:58:45 +0100
commitfe8df6ba387420ad51c6a0c837dd3c7c34dd4380 (patch)
treeaf7ad8b5624bac7238fc912ff3aa074b6ce6bd40
parent2774d43cff763cb1e5502c2369a32a049a2e1e0d (diff)
More Spotify data consistency check.
-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));