diff options
Diffstat (limited to 'apps/codecs')
-rw-r--r-- | apps/codecs/mpa.c | 2 | ||||
-rw-r--r-- | apps/codecs/vorbis.c | 2 | ||||
-rw-r--r-- | apps/codecs/wavpack.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/apps/codecs/mpa.c b/apps/codecs/mpa.c index 5d6f7d29ad..126d9b6d67 100644 --- a/apps/codecs/mpa.c +++ b/apps/codecs/mpa.c | |||
@@ -110,7 +110,7 @@ enum codec_status codec_start(struct codec_api* api) | |||
110 | first_frame = false; | 110 | first_frame = false; |
111 | file_end = 0; | 111 | file_end = 0; |
112 | 112 | ||
113 | while (!*ci->taginfo_ready) | 113 | while (!*ci->taginfo_ready && !ci->stop_codec) |
114 | ci->yield(); | 114 | ci->yield(); |
115 | 115 | ||
116 | frequency_divider = ci->id3->frequency / 100; | 116 | frequency_divider = ci->id3->frequency / 100; |
diff --git a/apps/codecs/vorbis.c b/apps/codecs/vorbis.c index 946f2f9377..353b90fb0b 100644 --- a/apps/codecs/vorbis.c +++ b/apps/codecs/vorbis.c | |||
@@ -137,7 +137,7 @@ enum codec_status codec_start(struct codec_api* api) | |||
137 | return CODEC_ERROR; | 137 | return CODEC_ERROR; |
138 | } | 138 | } |
139 | 139 | ||
140 | while (!rb->taginfo_ready) | 140 | while (!*rb->taginfo_ready && !rb->stop_codec) |
141 | rb->yield(); | 141 | rb->yield(); |
142 | 142 | ||
143 | if (rb->id3->frequency != NATIVE_FREQUENCY) { | 143 | if (rb->id3->frequency != NATIVE_FREQUENCY) { |
diff --git a/apps/codecs/wavpack.c b/apps/codecs/wavpack.c index 39b8514fe5..372fe20508 100644 --- a/apps/codecs/wavpack.c +++ b/apps/codecs/wavpack.c | |||
@@ -74,7 +74,7 @@ enum codec_status codec_start(struct codec_api* api) | |||
74 | if (codec_init(api)) | 74 | if (codec_init(api)) |
75 | return CODEC_ERROR; | 75 | return CODEC_ERROR; |
76 | 76 | ||
77 | while (!rb->taginfo_ready) | 77 | while (!*rb->taginfo_ready && !ci->stop_codec) |
78 | ci->yield(); | 78 | ci->yield(); |
79 | 79 | ||
80 | if (ci->id3->frequency != NATIVE_FREQUENCY) { | 80 | if (ci->id3->frequency != NATIVE_FREQUENCY) { |