summaryrefslogtreecommitdiff
path: root/apps/codecs/libtremor/res012.c
diff options
context:
space:
mode:
authorNils Wallménius <nils@rockbox.org>2010-12-08 17:28:17 +0000
committerNils Wallménius <nils@rockbox.org>2010-12-08 17:28:17 +0000
commit2aa511f6bdac6364fe09a0004e4e14b3fc17a6c2 (patch)
tree7c9bad037e3f57f7138d3846ccdccc48a752cd80 /apps/codecs/libtremor/res012.c
parentaff90a9db734186e680c4ef747d66d32a83eb2aa (diff)
downloadrockbox-2aa511f6bdac6364fe09a0004e4e14b3fc17a6c2.zip
rockbox-2aa511f6bdac6364fe09a0004e4e14b3fc17a6c2.tar.gz
rockbox-2aa511f6bdac6364fe09a0004e4e14b3fc17a6c2.tar.bz2
rockbox-2aa511f6bdac6364fe09a0004e4e14b3fc17a6c2.tar.xz
libtremor: merge upstream revisions 17541, 17542, 17543, 17544, 17545, 17546, 17547, 17555, 17572, bringing in various fixes and finally bringing our libtremor up to date, for now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28773 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libtremor/res012.c')
-rw-r--r--apps/codecs/libtremor/res012.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/codecs/libtremor/res012.c b/apps/codecs/libtremor/res012.c
index 1263fa6..79e3c23 100644
--- a/apps/codecs/libtremor/res012.c
+++ b/apps/codecs/libtremor/res012.c
@@ -135,6 +135,7 @@ static vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){
int entries = ci->book_param[info->groupbook]->entries;
int dim = ci->book_param[info->groupbook]->dim;
int partvals = 1;
+ if (dim<1) goto errout;
while(dim>0){
partvals *= info->partitions;
if(partvals > entries) goto errout;
@@ -322,7 +323,7 @@ int res2_inverse(vorbis_block *vb,vorbis_look_residue *vl,
if(s==0){
/* fetch the partition word */
int temp=vorbis_book_decode(look->phrasebook,&vb->opb);
- if(temp==-1 || temp>info->partvals)goto eopbreak;
+ if(temp==-1 || temp>=info->partvals)goto eopbreak;
partword[l]=look->decodemap[temp];
if(partword[l]==NULL)goto errout;
}