diff options
| author | Michael Giacomelli <giac2000@hotmail.com> | 2009-12-14 01:09:01 +0000 |
|---|---|---|
| committer | Michael Giacomelli <giac2000@hotmail.com> | 2009-12-14 01:09:01 +0000 |
| commit | d6ae8edc134e9204044ec7b3113b5fef3122502c (patch) | |
| tree | 1d95f968859f40f6c93cf3e680604fe250324adb /apps/codecs/libm4a | |
| parent | 69a5ff7f8ac16e40e96d5fbe805b9682f627ea19 (diff) | |
| download | rockbox-d6ae8edc134e9204044ec7b3113b5fef3122502c.zip rockbox-d6ae8edc134e9204044ec7b3113b5fef3122502c.tar.gz rockbox-d6ae8edc134e9204044ec7b3113b5fef3122502c.tar.bz2 rockbox-d6ae8edc134e9204044ec7b3113b5fef3122502c.tar.xz | |
Commit both patches in FS#10833 - Protect against division by zero in AAC (mp4) codec by Juliusz Chroboczek. Adds some return value checking so that faad errors don't crash rockbox when decoding broken or unsupported files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23983 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libm4a')
| -rw-r--r-- | apps/codecs/libm4a/m4a.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/codecs/libm4a/m4a.c b/apps/codecs/libm4a/m4a.c index f066640..92e619d 100644 --- a/apps/codecs/libm4a/m4a.c +++ b/apps/codecs/libm4a/m4a.c @@ -194,7 +194,8 @@ unsigned int get_sample_offset(demux_res_t *demux_res, uint32_t sample) prev_chunk_samples = demux_res->sample_to_chunk[i].num_samples; } - if (sample >= demux_res->sample_to_chunk[0].num_samples) + if (prev_chunk_samples > 0 && + sample >= demux_res->sample_to_chunk[0].num_samples) { chunk = prev_chunk + (sample - total_samples) / prev_chunk_samples; } |