forked from len0rd/rockbox
Fixed a problem with transition to next album which caused rockbox
virtually to crash. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7096 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
1ed292ca5e
commit
0d63cbba4b
4 changed files with 5 additions and 5 deletions
|
@ -110,7 +110,7 @@ enum codec_status codec_start(struct codec_api* api)
|
|||
first_frame = false;
|
||||
file_end = 0;
|
||||
|
||||
while (!*ci->taginfo_ready)
|
||||
while (!*ci->taginfo_ready && !ci->stop_codec)
|
||||
ci->yield();
|
||||
|
||||
frequency_divider = ci->id3->frequency / 100;
|
||||
|
|
|
@ -137,7 +137,7 @@ enum codec_status codec_start(struct codec_api* api)
|
|||
return CODEC_ERROR;
|
||||
}
|
||||
|
||||
while (!rb->taginfo_ready)
|
||||
while (!*rb->taginfo_ready && !rb->stop_codec)
|
||||
rb->yield();
|
||||
|
||||
if (rb->id3->frequency != NATIVE_FREQUENCY) {
|
||||
|
|
|
@ -74,7 +74,7 @@ enum codec_status codec_start(struct codec_api* api)
|
|||
if (codec_init(api))
|
||||
return CODEC_ERROR;
|
||||
|
||||
while (!rb->taginfo_ready)
|
||||
while (!*rb->taginfo_ready && !ci->stop_codec)
|
||||
ci->yield();
|
||||
|
||||
if (ci->id3->frequency != NATIVE_FREQUENCY) {
|
||||
|
|
|
@ -1036,7 +1036,7 @@ void audio_play_start(int offset)
|
|||
close(current_fd);
|
||||
current_fd = -1;
|
||||
}
|
||||
|
||||
|
||||
memset(&tracks, 0, sizeof(struct track_info) * MAX_TRACK);
|
||||
sound_set(SOUND_VOLUME, global_settings.volume);
|
||||
track_count = 0;
|
||||
|
@ -1367,7 +1367,7 @@ bool codec_request_next_track_callback(void)
|
|||
logf("No more tracks [2]");
|
||||
ci.stop_codec = true;
|
||||
new_track = 0;
|
||||
queue_post(&codec_queue, CODEC_LOAD, 0);
|
||||
queue_post(&audio_queue, AUDIO_PLAY, 0);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue