зеркало из https://github.com/mozilla/pjs.git
Bug 719612 - Update libvorbis. r=kinetik
This commit is contained in:
Родитель
7956f66d80
Коммит
86159f1ab6
|
@ -0,0 +1,21 @@
|
||||||
|
diff --git a/media/libtremor/lib/tremor_floor1.c b/media/libtremor/lib/tremor_floor1.c
|
||||||
|
--- a/media/libtremor/lib/tremor_floor1.c
|
||||||
|
+++ b/media/libtremor/lib/tremor_floor1.c
|
||||||
|
@@ -103,16 +103,17 @@ static vorbis_info_floor *floor1_unpack
|
||||||
|
|
||||||
|
/* read the post list */
|
||||||
|
info->mult=oggpack_read(opb,2)+1; /* only 1,2,3,4 legal now */
|
||||||
|
rangebits=oggpack_read(opb,4);
|
||||||
|
if(rangebits<0)goto err_out;
|
||||||
|
|
||||||
|
for(j=0,k=0;j<info->partitions;j++){
|
||||||
|
count+=info->class_dim[info->partitionclass[j]];
|
||||||
|
+ if(count>VIF_POSIT)goto err_out;
|
||||||
|
for(;k<count;k++){
|
||||||
|
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
||||||
|
if(t<0 || t>=(1<<rangebits))
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
info->postlist[0]=0;
|
||||||
|
info->postlist[1]=1<<rangebits;
|
|
@ -108,6 +108,7 @@ static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
|
||||||
|
|
||||||
for(j=0,k=0;j<info->partitions;j++){
|
for(j=0,k=0;j<info->partitions;j++){
|
||||||
count+=info->class_dim[info->partitionclass[j]];
|
count+=info->class_dim[info->partitionclass[j]];
|
||||||
|
if(count>VIF_POSIT)goto err_out;
|
||||||
for(;k<count;k++){
|
for(;k<count;k++){
|
||||||
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
||||||
if(t<0 || t>=(1<<rangebits))
|
if(t<0 || t>=(1<<rangebits))
|
||||||
|
|
|
@ -30,3 +30,4 @@ cp $1/ivorbiscodec.h ./include/tremor/ivorbiscodec.h
|
||||||
cp $1/os.h ./lib/os.h
|
cp $1/os.h ./lib/os.h
|
||||||
cp $1/COPYING ./COPYING
|
cp $1/COPYING ./COPYING
|
||||||
cp $1/README ./README
|
cp $1/README ./README
|
||||||
|
patch -p3 < ./bug719612.patch
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
diff --git a/media/libvorbis/lib/vorbis_floor1.c b/media/libvorbis/lib/vorbis_floor1.c
|
||||||
|
--- a/media/libvorbis/lib/vorbis_floor1.c
|
||||||
|
+++ b/media/libvorbis/lib/vorbis_floor1.c
|
||||||
|
@@ -162,16 +162,17 @@ static vorbis_info_floor *floor1_unpack
|
||||||
|
|
||||||
|
/* read the post list */
|
||||||
|
info->mult=oggpack_read(opb,2)+1; /* only 1,2,3,4 legal now */
|
||||||
|
rangebits=oggpack_read(opb,4);
|
||||||
|
if(rangebits<0)goto err_out;
|
||||||
|
|
||||||
|
for(j=0,k=0;j<info->partitions;j++){
|
||||||
|
count+=info->class_dim[info->partitionclass[j]];
|
||||||
|
+ if(count>VIF_POSIT) goto err_out;
|
||||||
|
for(;k<count;k++){
|
||||||
|
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
||||||
|
if(t<0 || t>=(1<<rangebits))
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
info->postlist[0]=0;
|
||||||
|
info->postlist[1]=1<<rangebits;
|
|
@ -167,6 +167,7 @@ static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
|
||||||
|
|
||||||
for(j=0,k=0;j<info->partitions;j++){
|
for(j=0,k=0;j<info->partitions;j++){
|
||||||
count+=info->class_dim[info->partitionclass[j]];
|
count+=info->class_dim[info->partitionclass[j]];
|
||||||
|
if(count>VIF_POSIT) goto err_out;
|
||||||
for(;k<count;k++){
|
for(;k<count;k++){
|
||||||
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
int t=info->postlist[k+2]=oggpack_read(opb,rangebits);
|
||||||
if(t<0 || t>=(1<<rangebits))
|
if(t<0 || t>=(1<<rangebits))
|
||||||
|
|
|
@ -47,3 +47,4 @@ cp $1/COPYING ./COPYING
|
||||||
cp $1/README ./README
|
cp $1/README ./README
|
||||||
cp $1/AUTHORS ./AUTHORS
|
cp $1/AUTHORS ./AUTHORS
|
||||||
patch -p3 < ./alloca.diff
|
patch -p3 < ./alloca.diff
|
||||||
|
patch -p3 < ./bug719612.patch
|
||||||
|
|
Загрузка…
Ссылка в новой задаче