|
|
|
@@ -100,10 +100,12 @@ typedef struct DiracParseUnit { |
|
|
|
static int unpack_parse_unit(DiracParseUnit *pu, DiracParseContext *pc, |
|
|
|
int offset) |
|
|
|
{ |
|
|
|
uint8_t *start = pc->buffer + offset; |
|
|
|
uint8_t *end = pc->buffer + pc->index; |
|
|
|
if (start < pc->buffer || (start + 13 > end)) |
|
|
|
int8_t *start; |
|
|
|
|
|
|
|
if (offset < 0 || pc->index - 13 < offset) |
|
|
|
return 0; |
|
|
|
|
|
|
|
start = pc->buffer + offset; |
|
|
|
pu->pu_type = start[4]; |
|
|
|
|
|
|
|
pu->next_pu_offset = AV_RB32(start + 5); |
|
|
|
|