From 9f23757cc3f9f7fc3b48eabeeccef720cc03fb49 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Fri, 4 Dec 2015 20:59:01 +0100 Subject: [PATCH] core: Return pending position during active seek. This covers over that audio will fail query position while a seek is in progress. It also means that instead of returning zero we at least return something which is much closer to the time that we will soon end up playing from. --- mopidy/core/playback.py | 2 ++ tests/core/test_playback.py | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mopidy/core/playback.py b/mopidy/core/playback.py index e877866f..89bd92ee 100644 --- a/mopidy/core/playback.py +++ b/mopidy/core/playback.py @@ -131,6 +131,8 @@ class PlaybackController(object): def get_time_position(self): """Get time position in milliseconds.""" + if self._pending_position is not None: + return self._pending_position backend = self._get_backend(self.get_current_tl_track()) if backend: return backend.playback.get_time_position().get() diff --git a/tests/core/test_playback.py b/tests/core/test_playback.py index f0d6d477..0da59b4d 100644 --- a/tests/core/test_playback.py +++ b/tests/core/test_playback.py @@ -855,7 +855,6 @@ class BackendSelectionTest(unittest.TestCase): self.core.playback.play(self.tl_tracks[0]) self.trigger_stream_changed() - self.core.playback.seek(10000) self.core.playback.time_position self.playback1.get_time_position.assert_called_once_with() @@ -865,7 +864,6 @@ class BackendSelectionTest(unittest.TestCase): self.core.playback.play(self.tl_tracks[1]) self.trigger_stream_changed() - self.core.playback.seek(10000) self.core.playback.time_position self.assertFalse(self.playback1.get_time_position.called)