From 698b536f3b34a7cfc41a80e1034cc359456bdd66 Mon Sep 17 00:00:00 2001 From: Dave Burke Date: Sat, 12 May 2012 13:17:25 -0700 Subject: Update to 2012_05_11 version. Fixes: - Don't throw error for invalid bitrate but limit to functional value - More robust ASC parsing - More robust handling of corrupt bitstreams - Handle multiple raw access units Change-Id: Ib49fe2545ff4185fe924126da702fe84ac5c2d87 --- libAACdec/src/aacdec_hcrs.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libAACdec/src/aacdec_hcrs.cpp') diff --git a/libAACdec/src/aacdec_hcrs.cpp b/libAACdec/src/aacdec_hcrs.cpp index da8928e..1c2bb46 100644 --- a/libAACdec/src/aacdec_hcrs.cpp +++ b/libAACdec/src/aacdec_hcrs.cpp @@ -736,6 +736,9 @@ UINT Hcr_State_BODY_SIGN__SIGN(HANDLE_FDK_BITSTREAM bs, void *ptr) /* search for a line (which was decoded in previous state) which is not zero. [This value will get a sign] */ while ( pResultBase[iQSC] == (FIXP_DBL)0 ) { iQSC++; /* points to current value different from zero */ + if (iQSC >= 1024) { + return BODY_SIGN__SIGN; + } } /* put sign together with line; if carryBit is zero, the sign is ok already; no write operation necessary in this case */ -- cgit v1.2.3