PlaylistError: add NotPlaying()

This commit is contained in:
Max Kellermann 2016-02-28 10:38:17 +01:00
parent 92f54f0b59
commit f8810d7caf
2 changed files with 9 additions and 11 deletions

View File

@ -64,6 +64,11 @@ public:
return PlaylistError(PlaylistResult::BAD_RANGE,
"Bad song index");
}
static PlaylistError NotPlaying() {
return PlaylistError(PlaylistResult::NOT_PLAYING,
"Not playing");
}
};
#endif

View File

@ -260,22 +260,15 @@ playlist::SeekCurrent(PlayerControl &pc,
SignedSongTime seek_time, bool relative,
Error &error)
{
if (!playing) {
error.Set(playlist_domain, int(PlaylistResult::NOT_PLAYING),
"Not playing");
return false;
}
if (!playing)
throw PlaylistError::NotPlaying();
if (relative) {
const auto status = pc.LockGetStatus();
if (status.state != PlayerState::PLAY &&
status.state != PlayerState::PAUSE) {
error.Set(playlist_domain,
int(PlaylistResult::NOT_PLAYING),
"Not playing");
return false;
}
status.state != PlayerState::PAUSE)
throw PlaylistError::NotPlaying();
seek_time += status.elapsed_time;
if (seek_time.IsNegative())