Line
Link Here
|
0 |
-- a/modules/demux/mp4/libmp4.c |
0 |
++ b/modules/demux/mp4/libmp4.c |
Lines 3151-3156
Link Here
|
3151 |
uint32_t i_type; |
3151 |
uint32_t i_type; |
3152 |
int (*MP4_ReadBox_function )( stream_t *p_stream, MP4_Box_t *p_box ); |
3152 |
int (*MP4_ReadBox_function )( stream_t *p_stream, MP4_Box_t *p_box ); |
3153 |
void (*MP4_FreeBox_function )( MP4_Box_t *p_box ); |
3153 |
void (*MP4_FreeBox_function )( MP4_Box_t *p_box ); |
|
|
3154 |
uint32_t i_parent; /* set parent to restrict, duplicating if needed; 0 for any */ |
3154 |
} MP4_Box_Function [] = |
3155 |
} MP4_Box_Function [] = |
3155 |
{ |
3156 |
{ |
3156 |
/* Containers */ |
3157 |
/* Containers */ |
Lines 3418-3423
Link Here
|
3418 |
/* Now search function to call */ |
3419 |
/* Now search function to call */ |
3419 |
for( i_index = 0; ; i_index++ ) |
3420 |
for( i_index = 0; ; i_index++ ) |
3420 |
{ |
3421 |
{ |
|
|
3422 |
if ( MP4_Box_Function[i_index].i_parent && |
3423 |
p_box->p_father && |
3424 |
p_box->p_father->i_type != MP4_Box_Function[i_index].i_parent ) |
3425 |
continue; |
3426 |
|
3421 |
if( ( MP4_Box_Function[i_index].i_type == p_box->i_type )|| |
3427 |
if( ( MP4_Box_Function[i_index].i_type == p_box->i_type )|| |
3422 |
( MP4_Box_Function[i_index].i_type == 0 ) ) |
3428 |
( MP4_Box_Function[i_index].i_type == 0 ) ) |
3423 |
{ |
3429 |
{ |
Lines 3460-3465
void MP4_BoxFree( stream_t *s, MP4_Box_t *p_box )
Link Here
|
3460 |
{ |
3460 |
{ |
3461 |
for( i_index = 0; ; i_index++ ) |
3461 |
for( i_index = 0; ; i_index++ ) |
3462 |
{ |
3462 |
{ |
|
|
3463 |
if ( MP4_Box_Function[i_index].i_parent && |
3464 |
p_box->p_father && |
3465 |
p_box->p_father->i_type != MP4_Box_Function[i_index].i_parent ) |
3466 |
continue; |
3467 |
|
3463 |
if( ( MP4_Box_Function[i_index].i_type == p_box->i_type )|| |
3468 |
if( ( MP4_Box_Function[i_index].i_type == p_box->i_type )|| |
3464 |
( MP4_Box_Function[i_index].i_type == 0 ) ) |
3469 |
( MP4_Box_Function[i_index].i_type == 0 ) ) |
3465 |
{ |
3470 |
{ |