core: Make sure certain events are ignored when doing eot-seeks

This commit is contained in:
Thomas Adamcik 2015-12-03 23:23:55 +01:00
parent aeb881896b
commit 454077afeb
2 changed files with 6 additions and 6 deletions

View File

@ -212,14 +212,17 @@ class PlaybackController(object):
# This code path handles the stop() case, uri should be none.
position, self._last_position = self._last_position, None
self._trigger_track_playback_ended(position)
if self._pending_position is None:
self._trigger_track_playback_ended(position)
self._stream_title = None
if self._pending_tl_track:
self._set_current_tl_track(self._pending_tl_track)
self._pending_tl_track = None
self.set_state(PlaybackState.PLAYING)
self._trigger_track_playback_started()
if self._pending_position is None:
self.set_state(PlaybackState.PLAYING)
self._trigger_track_playback_started()
def _on_position_changed(self, position):
if self._pending_position == position:

View File

@ -6,8 +6,6 @@ import mock
import pykka
import pytest
from mopidy import backend, core
from mopidy.internal import deprecation
from mopidy.models import Track
@ -534,7 +532,6 @@ class EventEmissionTest(BaseTest):
],
listener_mock.send.mock_calls)
@pytest.mark.xfail
def test_seek_race_condition_emits_events(self, listener_mock):
tl_tracks = self.core.tracklist.get_tl_tracks()