summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorWei Jia <wjia@google.com>2015-08-13 02:52:34 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-08-13 02:52:34 +0000
commitc1fdbd41a56882f536590f99ab065a0b53864ff6 (patch)
tree0e7a9e2280e465c3a8b7d328ebc74a8108323682 /media
parent0459a574c37369c3868a00a1f3470ebc0c4af5df (diff)
parentbb37e84f8d45c34ec86485632e861914ac0473a0 (diff)
downloadframeworks_av-c1fdbd41a56882f536590f99ab065a0b53864ff6.zip
frameworks_av-c1fdbd41a56882f536590f99ab065a0b53864ff6.tar.gz
frameworks_av-c1fdbd41a56882f536590f99ab065a0b53864ff6.tar.bz2
am bb37e84f: Merge "libstagefright: fix possible overflow in amrwbenc." into mnc-dev
* commit 'bb37e84f8d45c34ec86485632e861914ac0473a0': libstagefright: fix possible overflow in amrwbenc.
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/codecs/amrwbenc/src/util.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/media/libstagefright/codecs/amrwbenc/src/util.c b/media/libstagefright/codecs/amrwbenc/src/util.c
index 76ab1b1..333140d 100644
--- a/media/libstagefright/codecs/amrwbenc/src/util.c
+++ b/media/libstagefright/codecs/amrwbenc/src/util.c
@@ -35,9 +35,10 @@ void Set_zero(
)
{
Word32 num = (Word32)L;
- do{
+ while (num > 0) {
*x++ = 0;
- }while(--num !=0);
+ --num;
+ }
}
@@ -54,20 +55,22 @@ void Copy(
)
{
Word32 temp1,temp2,num;
+ if (L <= 0) {
+ return;
+ }
if(L&1)
{
temp1 = *x++;
*y++ = temp1;
}
num = (Word32)(L>>1);
- temp1 = *x++;
- temp2 = *x++;
- do{
- *y++ = temp1;
- *y++ = temp2;
+ while (num > 0) {
temp1 = *x++;
temp2 = *x++;
- }while(--num!=0);
+ *y++ = temp1;
+ *y++ = temp2;
+ --num;
+ }
}