diff --git a/mopidy/backends/__init__.py b/mopidy/backends/__init__.py index 07c9c42a..3c557710 100644 --- a/mopidy/backends/__init__.py +++ b/mopidy/backends/__init__.py @@ -81,9 +81,8 @@ class BaseCurrentPlaylistController(object): self.playlist = Playlist(tracks=new_tracks) - def remove(self, position): - tracks = self.playlist.tracks - del tracks[position] + def remove(self,track): + tracks = filter(lambda t: t != track, self.playlist.tracks) self.playlist = Playlist(tracks=tracks) diff --git a/tests/backends/__init__.py b/tests/backends/__init__.py index 207a8766..7d00d9cc 100644 --- a/tests/backends/__init__.py +++ b/tests/backends/__init__.py @@ -147,7 +147,7 @@ class BaseCurrentPlaylistControllerTest(object): def test_remove(self): track1 = self.controller.playlist.tracks[1] track2 = self.controller.playlist.tracks[2] - self.controller.remove(1) + self.controller.remove(track1) self.assert_(track1 not in self.controller.playlist.tracks) self.assertEqual(track2, self.controller.playlist.tracks[1])