# HG changeset patch # User nicodvb # Date 1159393515 0 # Node ID 9cd5e242121e964163f6d4185ccdc806e840efb1 # Parent 1fb575aaddcd8415a32c8f086d6740791cb04729 in case of errors after decoding quit the main decoding loop before memmove() when sh_audio->in_buffer_len <= 0; patch by Chandan Pitta chandan.pitta gmail com diff -r 1fb575aaddcd -r 9cd5e242121e libmpcodecs/ad_faad.c --- a/libmpcodecs/ad_faad.c Wed Sep 27 20:52:20 2006 +0000 +++ b/libmpcodecs/ad_faad.c Wed Sep 27 21:45:15 2006 +0000 @@ -243,6 +243,10 @@ if(faac_finfo.error > 0) { mp_msg(MSGT_DECAUDIO,MSGL_WARN,"FAAD: error: %s, trying to resync!\n", faacDecGetErrorMessage(faac_finfo.error)); + if (sh->a_in_buffer_len <= 0) { + errors = MAX_FAAD_ERRORS; + break; + } sh->a_in_buffer_len--; memmove(sh->a_in_buffer,&sh->a_in_buffer[1],sh->a_in_buffer_len); aac_sync(sh);