diff options
Diffstat (limited to 'apps/codecs/wavpack.c')
-rw-r--r-- | apps/codecs/wavpack.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/apps/codecs/wavpack.c b/apps/codecs/wavpack.c index 2804d3ef72..19c7581e29 100644 --- a/apps/codecs/wavpack.c +++ b/apps/codecs/wavpack.c | |||
@@ -52,6 +52,7 @@ enum codec_status codec_start(struct codec_api* api) | |||
52 | WavpackContext *wpc; | 52 | WavpackContext *wpc; |
53 | char error [80]; | 53 | char error [80]; |
54 | int bps, nchans, sr_100; | 54 | int bps, nchans, sr_100; |
55 | int retval; | ||
55 | 56 | ||
56 | /* Generic codec initialisation */ | 57 | /* Generic codec initialisation */ |
57 | ci = api; | 58 | ci = api; |
@@ -70,8 +71,10 @@ enum codec_status codec_start(struct codec_api* api) | |||
70 | 71 | ||
71 | next_track: | 72 | next_track: |
72 | 73 | ||
73 | if (codec_init(api)) | 74 | if (codec_init(api)) { |
74 | return CODEC_ERROR; | 75 | retval = CODEC_ERROR; |
76 | goto exit; | ||
77 | } | ||
75 | 78 | ||
76 | while (!*ci->taginfo_ready && !ci->stop_codec) | 79 | while (!*ci->taginfo_ready && !ci->stop_codec) |
77 | ci->sleep(1); | 80 | ci->sleep(1); |
@@ -94,8 +97,10 @@ enum codec_status codec_start(struct codec_api* api) | |||
94 | /* Create a decoder instance */ | 97 | /* Create a decoder instance */ |
95 | wpc = WavpackOpenFileInput (read_callback, error); | 98 | wpc = WavpackOpenFileInput (read_callback, error); |
96 | 99 | ||
97 | if (!wpc) | 100 | if (!wpc) { |
98 | return CODEC_ERROR; | 101 | retval = CODEC_ERROR; |
102 | goto exit; | ||
103 | } | ||
99 | 104 | ||
100 | bps = WavpackGetBytesPerSample (wpc); | 105 | bps = WavpackGetBytesPerSample (wpc); |
101 | nchans = WavpackGetReducedChannels (wpc); | 106 | nchans = WavpackGetReducedChannels (wpc); |
@@ -206,5 +211,7 @@ enum codec_status codec_start(struct codec_api* api) | |||
206 | if (ci->request_next_track()) | 211 | if (ci->request_next_track()) |
207 | goto next_track; | 212 | goto next_track; |
208 | 213 | ||
209 | return CODEC_OK; | 214 | retval = CODEC_OK; |
215 | exit: | ||
216 | return retval; | ||
210 | } | 217 | } |