dirac_parser: add exceptions for Dirac inter parse codes
Forgotten from previous commit. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
This commit is contained in:
parent
8c9103c4af
commit
7d8891593c
@ -103,7 +103,7 @@ static int unpack_parse_unit(DiracParseUnit *pu, DiracParseContext *pc,
|
|||||||
int i;
|
int i;
|
||||||
int8_t *start;
|
int8_t *start;
|
||||||
static const uint8_t valid_pu_types[] = {
|
static const uint8_t valid_pu_types[] = {
|
||||||
0x00, 0x10, 0x20, 0x30, 0x08, 0x48, 0xC8, 0xE8
|
0x00, 0x10, 0x20, 0x30, 0x08, 0x48, 0xC8, 0xE8, 0x0A, 0x0C, 0x0D, 0x0E
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offset < 0 || pc->index - 13 < offset)
|
if (offset < 0 || pc->index - 13 < offset)
|
||||||
@ -116,10 +116,10 @@ static int unpack_parse_unit(DiracParseUnit *pu, DiracParseContext *pc,
|
|||||||
pu->prev_pu_offset = AV_RB32(start + 9);
|
pu->prev_pu_offset = AV_RB32(start + 9);
|
||||||
|
|
||||||
/* Check for valid parse code */
|
/* Check for valid parse code */
|
||||||
for (i = 0; i < 8; i++)
|
for (i = 0; i < 12; i++)
|
||||||
if (valid_pu_types[i] == pu->pu_type)
|
if (valid_pu_types[i] == pu->pu_type)
|
||||||
break;
|
break;
|
||||||
if (i == 8)
|
if (i == 12)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (pu->pu_type == 0x10 && pu->next_pu_offset == 0)
|
if (pu->pu_type == 0x10 && pu->next_pu_offset == 0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user