diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/codecs/mp3_enc.c | 3 | ||||
-rw-r--r-- | apps/codecs/wav_enc.c | 5 | ||||
-rw-r--r-- | apps/codecs/wavpack_enc.c | 3 |
3 files changed, 5 insertions, 6 deletions
diff --git a/apps/codecs/mp3_enc.c b/apps/codecs/mp3_enc.c index 08cbb18f03..1ec41ad45e 100644 --- a/apps/codecs/mp3_enc.c +++ b/apps/codecs/mp3_enc.c | |||
@@ -2329,7 +2329,8 @@ static bool on_start_file(struct enc_file_event_data *data) | |||
2329 | 2329 | ||
2330 | static bool on_end_file(struct enc_file_event_data *data) | 2330 | static bool on_end_file(struct enc_file_event_data *data) |
2331 | { | 2331 | { |
2332 | if (!is_file_data_ok(data) || ci->close(data->rec_file) != 0) | 2332 | /* always _try_ to write the file header, even on error */ |
2333 | if (ci->close(data->rec_file) != 0) | ||
2333 | return false; | 2334 | return false; |
2334 | 2335 | ||
2335 | data->rec_file = -1; | 2336 | data->rec_file = -1; |
diff --git a/apps/codecs/wav_enc.c b/apps/codecs/wav_enc.c index a11aaa07d6..eb43f8b240 100644 --- a/apps/codecs/wav_enc.c +++ b/apps/codecs/wav_enc.c | |||
@@ -144,8 +144,7 @@ static bool on_end_file(struct enc_file_event_data *data) | |||
144 | struct riff_header hdr; | 144 | struct riff_header hdr; |
145 | uint32_t data_size; | 145 | uint32_t data_size; |
146 | 146 | ||
147 | if (!is_file_data_ok(data)) | 147 | /* always _try_ to write the file header, even on error */ |
148 | return false; | ||
149 | 148 | ||
150 | if (ci->lseek(data->rec_file, 0, SEEK_SET) != 0 || | 149 | if (ci->lseek(data->rec_file, 0, SEEK_SET) != 0 || |
151 | ci->read(data->rec_file, &hdr, sizeof (hdr)) != sizeof (hdr)) | 150 | ci->read(data->rec_file, &hdr, sizeof (hdr)) != sizeof (hdr)) |
@@ -387,7 +386,7 @@ enum codec_status codec_main(void) | |||
387 | 386 | ||
388 | /* reset parameters to initial state */ | 387 | /* reset parameters to initial state */ |
389 | ci->enc_set_parameters(NULL); | 388 | ci->enc_set_parameters(NULL); |
390 | 389 | ||
391 | /* main application waits for this flag during encoder removing */ | 390 | /* main application waits for this flag during encoder removing */ |
392 | ci->enc_codec_loaded = 0; | 391 | ci->enc_codec_loaded = 0; |
393 | 392 | ||
diff --git a/apps/codecs/wavpack_enc.c b/apps/codecs/wavpack_enc.c index 744b98721c..cf58a5973a 100644 --- a/apps/codecs/wavpack_enc.c +++ b/apps/codecs/wavpack_enc.c | |||
@@ -257,8 +257,7 @@ static bool on_end_file(struct enc_file_event_data *data) | |||
257 | 257 | ||
258 | uint32_t data_size; | 258 | uint32_t data_size; |
259 | 259 | ||
260 | if (!is_file_data_ok(data)) | 260 | /* always _try_ to write the file header, even on error */ |
261 | return false; | ||
262 | 261 | ||
263 | /* read template headers at start */ | 262 | /* read template headers at start */ |
264 | if (ci->lseek(data->rec_file, 0, SEEK_SET) != 0 || | 263 | if (ci->lseek(data->rec_file, 0, SEEK_SET) != 0 || |