summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Jia <wjia@google.com>2015-08-20 16:25:04 -0700
committerWei Jia <wjia@google.com>2015-08-20 16:25:04 -0700
commit99e0e2e2c1fd0f895b6d4bdf0a85798cf044218e (patch)
tree592c8a758fea86a9f113fa2aa03c67e087fbd333
parentd216e303f65f5e36ffba92d342a8c61f753c98d7 (diff)
downloadandroid_external_sonivox-99e0e2e2c1fd0f895b6d4bdf0a85798cf044218e.tar.gz
android_external_sonivox-99e0e2e2c1fd0f895b6d4bdf0a85798cf044218e.tar.bz2
android_external_sonivox-99e0e2e2c1fd0f895b6d4bdf0a85798cf044218e.zip
Sonivox: make sure waveIndex is valid in Parse_rgn() in eas_mdls.c.
Bug: 23335715 Change-Id: I4a5522c46dcda9285db1f830337aa2642ddc4fd1
-rw-r--r--arm-wt-22k/lib_src/eas_mdls.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arm-wt-22k/lib_src/eas_mdls.c b/arm-wt-22k/lib_src/eas_mdls.c
index 51cce70..d66c734 100644
--- a/arm-wt-22k/lib_src/eas_mdls.c
+++ b/arm-wt-22k/lib_src/eas_mdls.c
@@ -1676,6 +1676,10 @@ static EAS_RESULT Parse_rgn (SDLS_SYNTHESIZER_DATA *pDLSData, EAS_I32 pos, EAS_I
/* parse wlnk chunk */
if ((result = Parse_wlnk(pDLSData, wlnkPos, &waveIndex)) != EAS_SUCCESS)
return result;
+ if (waveIndex >= pDLSData->waveCount)
+ {
+ return EAS_FAILURE;
+ }
pWsmp = &pDLSData->wsmpData[waveIndex];
/* if there is any articulation data, parse it */