diff --git a/src/wavlike.c b/src/wavlike.c index a3388d75..cf5a7d2b 100644 --- a/src/wavlike.c +++ b/src/wavlike.c @@ -971,7 +971,7 @@ wavlike_subchunk_parse (SF_PRIVATE *psf, int chunk, uint32_t chunk_length) else psf_log_printf (psf, "%M : %u\n", chunk, chunk_length) ; - while (bytesread < chunk_length) + while (chunk_length - bytesread >= 4) { uint32_t thisread ; if ((thisread = psf_binheader_readf (psf, "m", &chunk)) == 0)