queueSong() cannot fail

All (indirect) callers of queueSong() ensure that the queue state is
BLANK, so there is no need to check it in queueSong() again.  As a
side effect, queueSong() cannot fail anymore, and can return void.
Also, playlist_queueError and all its error handling can go away.
This commit is contained in:
Max Kellermann 2008-08-26 08:27:17 +02:00
parent b94af79134
commit 113c1c0af5
3 changed files with 8 additions and 21 deletions

View File

@ -165,15 +165,12 @@ char *getPlayerErrorStr(void)
return *error ? error : NULL;
}
int queueSong(Song * song)
void queueSong(Song * song)
{
if (pc.queueState == PLAYER_QUEUE_BLANK) {
set_current_song(song);
pc.queueState = PLAYER_QUEUE_FULL;
return 0;
}
assert(pc.queueState == PLAYER_QUEUE_BLANK);
return -1;
set_current_song(song);
pc.queueState = PLAYER_QUEUE_FULL;
}
enum player_queue_state getPlayerQueueState(void)

View File

@ -129,7 +129,7 @@ int getPlayerError(void);
void playerWait(void);
int queueSong(Song * song);
void queueSong(Song * song);
enum player_queue_state getPlayerQueueState(void);

View File

@ -62,7 +62,6 @@ static int playlist_state = PLAYLIST_STATE_STOP;
int playlist_max_length = DEFAULT_PLAYLIST_MAX_LENGTH;
static int playlist_stopOnError;
static int playlist_errorCount;
static int playlist_queueError;
static int playlist_noGoToNext;
int playlist_saveAbsolutePaths = DEFAULT_PLAYLIST_SAVE_ABSOLUTE_PATHS;
@ -491,11 +490,7 @@ static void queueNextSongInPlaylist(void)
get_song_url(path_max_tmp,
playlist.
songs[playlist.order[playlist.queued]]));
if (queueSong(playlist.songs[playlist.order[playlist.queued]]) <
0) {
playlist.queued = -1;
playlist_queueError = 1;
}
queueSong(playlist.songs[playlist.order[playlist.queued]]);
} else if (playlist.length && playlist.repeat) {
if (playlist.length > 1 && playlist.random) {
randomizeOrder(0, playlist.length - 1);
@ -506,11 +501,7 @@ static void queueNextSongInPlaylist(void)
get_song_url(path_max_tmp,
playlist.
songs[playlist.order[playlist.queued]]));
if (queueSong(playlist.songs[playlist.order[playlist.queued]]) <
0) {
playlist.queued = -1;
playlist_queueError = 1;
}
queueSong(playlist.songs[playlist.order[playlist.queued]]);
}
}
@ -851,7 +842,6 @@ static void playPlaylistOrderNumber(int orderNum)
playlist_state = PLAYLIST_STATE_PLAY;
playlist_noGoToNext = 0;
playlist.queued = -1;
playlist_queueError = 0;
DEBUG("playlist: play %i:\"%s\"\n", orderNum,
get_song_url(path_max_tmp,
@ -953,7 +943,7 @@ void syncPlayerAndPlaylist(void)
if (getPlayerState() == PLAYER_STATE_STOP)
playPlaylistIfPlayerStopped();
else
syncPlaylistWithQueue(!playlist_queueError);
syncPlaylistWithQueue(1);
syncCurrentPlayerDecodeMetadata();
}