diff options
Diffstat (limited to 'lib/rbcodec/codecs/libm4a/demux.c')
-rw-r--r-- | lib/rbcodec/codecs/libm4a/demux.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/rbcodec/codecs/libm4a/demux.c b/lib/rbcodec/codecs/libm4a/demux.c index ae3c34fde4..cd1b6c6077 100644 --- a/lib/rbcodec/codecs/libm4a/demux.c +++ b/lib/rbcodec/codecs/libm4a/demux.c @@ -475,14 +475,14 @@ static bool read_chunk_stco(qtmovie_t *qtmovie, size_t chunk_len) { qtmovie->res->lookup_table = malloc(fit_numentries * sizeof(*qtmovie->res->lookup_table)); - if (qtmovie->res->lookup_table) + if (qtmovie->res->lookup_table || (++accuracy_divider == 0)) { break; } else { // we failed to alloc memory for lookup table, so reduce seek accuracy and try again - fit_numentries = numentries / ++accuracy_divider; + fit_numentries = numentries / accuracy_divider; } } DEBUGF("lookup_table numentries %d, fit_numentries %d\n", numentries, fit_numentries); |