omadec: Fix wrong number of array elements.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/3/merge
Michael Niedermayer 13 years ago
parent ddd86a2924
commit 4f5d1468f5
  1. 4
      libavformat/omadec.c

@ -234,7 +234,7 @@ static int decrypt_init(AVFormatContext *s, ID3v2ExtraMeta *em, uint8_t *header)
rprobe(s, gdata, oc->r_val) < 0 && rprobe(s, gdata, oc->r_val) < 0 &&
nprobe(s, gdata, geob->datasize, oc->n_val) < 0) { nprobe(s, gdata, geob->datasize, oc->n_val) < 0) {
int i; int i;
for (i = 0; i < sizeof(leaf_table); i += 2) { for (i = 0; i < FF_ARRAY_ELEMS(leaf_table); i += 2) {
uint8_t buf[16]; uint8_t buf[16];
AV_WL64(buf, leaf_table[i]); AV_WL64(buf, leaf_table[i]);
AV_WL64(&buf[8], leaf_table[i+1]); AV_WL64(&buf[8], leaf_table[i+1]);
@ -242,7 +242,7 @@ static int decrypt_init(AVFormatContext *s, ID3v2ExtraMeta *em, uint8_t *header)
if (!rprobe(s, gdata, oc->r_val) || !nprobe(s, gdata, geob->datasize, oc->n_val)) if (!rprobe(s, gdata, oc->r_val) || !nprobe(s, gdata, geob->datasize, oc->n_val))
break; break;
} }
if (i >= sizeof(leaf_table)) { if (i >= FF_ARRAY_ELEMS(leaf_table)) {
av_log(s, AV_LOG_ERROR, "Invalid key\n"); av_log(s, AV_LOG_ERROR, "Invalid key\n");
return -1; return -1;
} }

Loading…
Cancel
Save