summaryrefslogtreecommitdiff
path: root/apps/codecs/mpa.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/mpa.c')
-rw-r--r--apps/codecs/mpa.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/codecs/mpa.c b/apps/codecs/mpa.c
index d3a09ce4fc..d3da63b430 100644
--- a/apps/codecs/mpa.c
+++ b/apps/codecs/mpa.c
@@ -325,15 +325,14 @@ enum codec_status codec_main(void)
325 return CODEC_ERROR; 325 return CODEC_ERROR;
326 326
327next_track: 327next_track:
328
329 status = CODEC_OK; 328 status = CODEC_OK;
330 329
331 /* Reinitializing seems to be necessary to avoid playback quircks when seeking. */ 330 /* Reinitializing seems to be necessary to avoid playback quircks when seeking. */
332 init_mad(); 331 init_mad();
333 332
334 file_end = 0; 333 file_end = 0;
335 while (!*ci->taginfo_ready && !ci->stop_codec) 334 if (codec_wait_taginfo() != 0)
336 ci->sleep(1); 335 goto request_next_track;
337 336
338 ci->configure(DSP_SWITCH_FREQUENCY, ci->id3->frequency); 337 ci->configure(DSP_SWITCH_FREQUENCY, ci->id3->frequency);
339 current_frequency = ci->id3->frequency; 338 current_frequency = ci->id3->frequency;
@@ -505,6 +504,7 @@ next_track:
505 framelength - stop_skip); 504 framelength - stop_skip);
506 } 505 }
507 506
507request_next_track:
508 if (ci->request_next_track()) 508 if (ci->request_next_track())
509 goto next_track; 509 goto next_track;
510 510