Commit a5ea3d08 authored by Jean-Paul Saman's avatar Jean-Paul Saman Committed by Jean-Paul Saman

Add parenthesis for readibility and proper parsing.

parent 88437ee2
...@@ -484,7 +484,8 @@ static void decode_segment( decoder_t *p_dec, bs_t *s ) ...@@ -484,7 +484,8 @@ static void decode_segment( decoder_t *p_dec, bs_t *s )
/* segment size */ /* segment size */
i_size = bs_show( s, 16 ); i_size = bs_show( s, 16 );
if( i_page_id != p_sys->i_id && i_page_id != p_sys->i_ancillary_id ) if( ( i_page_id != p_sys->i_id ) &&
( i_page_id != p_sys->i_ancillary_id ) )
{ {
#ifdef DEBUG_DVBSUB #ifdef DEBUG_DVBSUB
msg_Dbg( p_dec, "subtitle skipped (page id: %i, %i)", msg_Dbg( p_dec, "subtitle skipped (page id: %i, %i)",
...@@ -494,9 +495,9 @@ static void decode_segment( decoder_t *p_dec, bs_t *s ) ...@@ -494,9 +495,9 @@ static void decode_segment( decoder_t *p_dec, bs_t *s )
return; return;
} }
if( p_sys->i_ancillary_id != p_sys->i_id && if( ( p_sys->i_ancillary_id != p_sys->i_id ) &&
i_type == DVBSUB_ST_PAGE_COMPOSITION && ( i_type == DVBSUB_ST_PAGE_COMPOSITION ) &&
i_page_id == p_sys->i_ancillary_id ) ( i_page_id == p_sys->i_ancillary_id ) )
{ {
#ifdef DEBUG_DVBSUB #ifdef DEBUG_DVBSUB
msg_Dbg( p_dec, "skipped invalid ancillary subtitle packet" ); msg_Dbg( p_dec, "skipped invalid ancillary subtitle packet" );
...@@ -582,7 +583,7 @@ static void decode_clut( decoder_t *p_dec, bs_t *s ) ...@@ -582,7 +583,7 @@ static void decode_clut( decoder_t *p_dec, bs_t *s )
} }
/* Check version number */ /* Check version number */
if( p_clut && p_clut->i_version == i_version ) if( p_clut && ( p_clut->i_version == i_version ) )
{ {
/* Nothing to do */ /* Nothing to do */
bs_skip( s, 8 * i_segment_length - 12 ); bs_skip( s, 8 * i_segment_length - 12 );
...@@ -693,8 +694,9 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s ) ...@@ -693,8 +694,9 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s )
#endif #endif
free_all( p_dec ); free_all( p_dec );
} }
else if( !p_sys->p_page && i_state != DVBSUB_PCS_STATE_ACQUISITION && else if( !p_sys->p_page &&
i_state != DVBSUB_PCS_STATE_CHANGE ) ( i_state != DVBSUB_PCS_STATE_ACQUISITION ) &&
( i_state != DVBSUB_PCS_STATE_CHANGE ) )
{ {
/* Not a full PCS, we need to wait for one */ /* Not a full PCS, we need to wait for one */
msg_Dbg( p_dec, "didn't receive an acquisition page yet" ); msg_Dbg( p_dec, "didn't receive an acquisition page yet" );
...@@ -712,7 +714,7 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s ) ...@@ -712,7 +714,7 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s )
#endif #endif
/* Check version number */ /* Check version number */
if( p_sys->p_page && p_sys->p_page->i_version == i_version ) if( p_sys->p_page && ( p_sys->p_page->i_version == i_version ) )
{ {
bs_skip( s, 8 * (i_segment_length - 2) ); bs_skip( s, 8 * (i_segment_length - 2) );
return; return;
...@@ -721,6 +723,7 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s ) ...@@ -721,6 +723,7 @@ static void decode_page_composition( decoder_t *p_dec, bs_t *s )
{ {
if( p_sys->p_page->i_region_defs ) if( p_sys->p_page->i_region_defs )
free( p_sys->p_page->p_region_defs ); free( p_sys->p_page->p_region_defs );
p_sys->p_page->p_region_defs = NULL;
p_sys->p_page->i_region_defs = 0; p_sys->p_page->i_region_defs = 0;
} }
...@@ -781,7 +784,7 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s ) ...@@ -781,7 +784,7 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s )
} }
/* Check version number */ /* Check version number */
if( p_region && p_region->i_version == i_version ) if( p_region && ( p_region->i_version == i_version ) )
{ {
bs_skip( s, 8 * (i_segment_length - 1) - 4 ); bs_skip( s, 8 * (i_segment_length - 1) - 4 );
return; return;
...@@ -793,10 +796,13 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s ) ...@@ -793,10 +796,13 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s )
msg_Dbg( p_dec, "new region: %i", i_id ); msg_Dbg( p_dec, "new region: %i", i_id );
#endif #endif
p_region = *pp_region = malloc( sizeof(dvbsub_region_t) ); p_region = *pp_region = malloc( sizeof(dvbsub_region_t) );
memset( p_region, 0, sizeof(dvbsub_region_t) ); if( p_region )
p_region->p_object_defs = NULL; {
p_region->p_pixbuf = NULL; memset( p_region, 0, sizeof(dvbsub_region_t) );
p_region->p_next = NULL; p_region->p_object_defs = NULL;
p_region->p_pixbuf = NULL;
p_region->p_next = NULL;
}
} }
/* Region attributes */ /* Region attributes */
...@@ -833,7 +839,8 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s ) ...@@ -833,7 +839,8 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s )
p_region->p_object_defs = NULL; p_region->p_object_defs = NULL;
/* Extra sanity checks */ /* Extra sanity checks */
if( p_region->i_width != i_width || p_region->i_height != i_height ) if( ( p_region->i_width != i_width ) ||
( p_region->i_height != i_height ) )
{ {
if( p_region->p_pixbuf ) if( p_region->p_pixbuf )
{ {
...@@ -846,8 +853,10 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s ) ...@@ -846,8 +853,10 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s )
p_region->i_depth = 0; p_region->i_depth = 0;
b_fill = VLC_TRUE; b_fill = VLC_TRUE;
} }
if( p_region->i_depth && (p_region->i_depth != i_depth || if( p_region->i_depth &&
p_region->i_level_comp != i_level_comp || p_region->i_clut != i_clut) ) ( ( p_region->i_depth != i_depth ) ||
( p_region->i_level_comp != i_level_comp ) ||
( p_region->i_clut != i_clut ) ) )
{ {
msg_Dbg( p_dec, "region parameters changed (not allowed)" ); msg_Dbg( p_dec, "region parameters changed (not allowed)" );
} }
...@@ -856,7 +865,7 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s ) ...@@ -856,7 +865,7 @@ static void decode_region_composition( decoder_t *p_dec, bs_t *s )
if( b_fill ) if( b_fill )
{ {
int i_background = (p_region->i_depth == 1) ? i_2_bg : int i_background = (p_region->i_depth == 1) ? i_2_bg :
(p_region->i_depth == 2) ? i_4_bg : i_8_bg; ( (p_region->i_depth == 2) ? i_4_bg : i_8_bg );
memset( p_region->p_pixbuf, i_background, i_width * i_height ); memset( p_region->p_pixbuf, i_background, i_width * i_height );
} }
...@@ -1008,8 +1017,8 @@ static void decode_object( decoder_t *p_dec, bs_t *s ) ...@@ -1008,8 +1017,8 @@ static void decode_object( decoder_t *p_dec, bs_t *s )
uint8_t* p_start = s->p_start + bs_pos( s ) / 8; uint8_t* p_start = s->p_start + bs_pos( s ) / 8;
/* Sanity check */ /* Sanity check */
if( (i_segment_length < i_number_of_codes*2 + 4) || if( ( i_segment_length < ( i_number_of_codes*2 + 4 ) ) ||
(p_start + i_number_of_codes*2 > s->p_end) ) ( ( p_start + i_number_of_codes*2 ) > s->p_end ) )
{ {
msg_Dbg( p_dec, "corrupted object data" ); msg_Dbg( p_dec, "corrupted object data" );
return; return;
...@@ -1056,8 +1065,9 @@ static void dvbsub_render_pdata( decoder_t *p_dec, dvbsub_region_t *p_region, ...@@ -1056,8 +1065,9 @@ static void dvbsub_render_pdata( decoder_t *p_dec, dvbsub_region_t *p_region,
msg_Err( p_dec, "region %i has no pixel buffer!", p_region->i_id ); msg_Err( p_dec, "region %i has no pixel buffer!", p_region->i_id );
return; return;
} }
if( i_y < 0 || i_x < 0 || i_y >= p_region->i_height || if( ( i_y < 0 ) || ( i_x < 0 ) ||
i_x >= p_region->i_width ) ( i_y >= p_region->i_height ) ||
( i_x >= p_region->i_width ) )
{ {
msg_Dbg( p_dec, "invalid offset (%i,%i)", i_x, i_y ); msg_Dbg( p_dec, "invalid offset (%i,%i)", i_x, i_y );
return; return;
...@@ -1104,13 +1114,14 @@ static void dvbsub_render_pdata( decoder_t *p_dec, dvbsub_region_t *p_region, ...@@ -1104,13 +1114,14 @@ static void dvbsub_render_pdata( decoder_t *p_dec, dvbsub_region_t *p_region,
static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
{ {
vlc_bool_t b_stop = 0; vlc_bool_t b_stop = VLC_FALSE;
while( !b_stop && !bs_eof( s ) ) while( !b_stop && !bs_eof( s ) )
{ {
int i_count = 0, i_color = 0; int i_count = 0, i_color = 0;
if( (i_color = bs_read( s, 2 )) != 0x00 ) i_color = bs_read( s, 2 );
if( i_color != 0x00 )
{ {
i_count = 1; i_count = 1;
} }
...@@ -1128,7 +1139,7 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1128,7 +1139,7 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
switch( bs_read( s, 2 ) ) //Switch3 switch( bs_read( s, 2 ) ) //Switch3
{ {
case 0x00: case 0x00:
b_stop = 1; b_stop = VLC_TRUE;
break; break;
case 0x01: case 0x01:
i_count = 2; i_count = 2;
...@@ -1156,7 +1167,7 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1156,7 +1167,7 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
if( !i_count ) continue; if( !i_count ) continue;
/* Sanity check */ /* Sanity check */
if( i_count + *pi_off > i_width ) break; if( ( i_count + *pi_off ) > i_width ) break;
if( i_count == 1 ) p[*pi_off] = i_color; if( i_count == 1 ) p[*pi_off] = i_color;
else memset( p + *pi_off, i_color, i_count ); else memset( p + *pi_off, i_color, i_count );
...@@ -1169,13 +1180,14 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1169,13 +1180,14 @@ static void dvbsub_pdata2bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
{ {
vlc_bool_t b_stop = 0; vlc_bool_t b_stop = VLC_FALSE;
while( !b_stop && !bs_eof( s ) ) while( !b_stop && !bs_eof( s ) )
{ {
int i_count = 0, i_color = 0; int i_count = 0, i_color = 0;
if( (i_color = bs_read( s, 4 )) != 0x00 ) i_color = bs_read( s, 4 );
if( i_color != 0x00 )
{ {
/* Add 1 pixel */ /* Add 1 pixel */
i_count = 1; i_count = 1;
...@@ -1191,7 +1203,7 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1191,7 +1203,7 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
else else
{ {
bs_skip( s, 3 ); bs_skip( s, 3 );
b_stop = 1; b_stop = VLC_TRUE;
} }
} }
else else
...@@ -1227,7 +1239,7 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1227,7 +1239,7 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
if( !i_count ) continue; if( !i_count ) continue;
/* Sanity check */ /* Sanity check */
if( i_count + *pi_off > i_width ) break; if( ( i_count + *pi_off ) > i_width ) break;
if( i_count == 1 ) p[*pi_off] = i_color; if( i_count == 1 ) p[*pi_off] = i_color;
else memset( p + *pi_off, i_color, i_count ); else memset( p + *pi_off, i_color, i_count );
...@@ -1240,13 +1252,14 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1240,13 +1252,14 @@ static void dvbsub_pdata4bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
{ {
vlc_bool_t b_stop = 0; vlc_bool_t b_stop = VLC_FALSE;
while( !b_stop && !bs_eof( s ) ) while( !b_stop && !bs_eof( s ) )
{ {
int i_count = 0, i_color = 0; int i_count = 0, i_color = 0;
if( (i_color = bs_read( s, 8 )) != 0x00 ) i_color = bs_read( s, 8 );
if( i_color != 0x00 )
{ {
/* Add 1 pixel */ /* Add 1 pixel */
i_count = 1; i_count = 1;
...@@ -1262,7 +1275,7 @@ static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1262,7 +1275,7 @@ static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
else else
{ {
bs_skip( s, 7 ); bs_skip( s, 7 );
b_stop = 1; b_stop = VLC_TRUE;
} }
} }
else else
...@@ -1275,7 +1288,7 @@ static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off ) ...@@ -1275,7 +1288,7 @@ static void dvbsub_pdata8bpp( bs_t *s, uint8_t *p, int i_width, int *pi_off )
if( !i_count ) continue; if( !i_count ) continue;
/* Sanity check */ /* Sanity check */
if( i_count + *pi_off > i_width ) break; if( ( i_count + *pi_off ) > i_width ) break;
if( i_count == 1 ) p[*pi_off] = i_color; if( i_count == 1 ) p[*pi_off] = i_color;
else memset( p + *pi_off, i_color, i_count ); else memset( p + *pi_off, i_color, i_count );
...@@ -1341,7 +1354,7 @@ static subpicture_t *render( decoder_t *p_dec ) ...@@ -1341,7 +1354,7 @@ static subpicture_t *render( decoder_t *p_dec )
msg_Dbg( p_dec, "rendering %i regions", p_sys->p_page->i_region_defs ); msg_Dbg( p_dec, "rendering %i regions", p_sys->p_page->i_region_defs );
#endif #endif
for( i = 0; p_sys->p_page && i < p_sys->p_page->i_region_defs; i++ ) for( i = 0; p_sys->p_page && (i < p_sys->p_page->i_region_defs); i++ )
{ {
dvbsub_region_t *p_region; dvbsub_region_t *p_region;
dvbsub_regiondef_t *p_regiondef; dvbsub_regiondef_t *p_regiondef;
...@@ -1384,7 +1397,8 @@ static subpicture_t *render( decoder_t *p_dec ) ...@@ -1384,7 +1397,8 @@ static subpicture_t *render( decoder_t *p_dec )
msg_Dbg( p_dec, "clut %i not found", p_region->i_clut ); msg_Dbg( p_dec, "clut %i not found", p_region->i_clut );
continue; continue;
} }
/* FIXME: don't create a subpicture region with VLC_FOURCC YUVP
* when it actually is a TEXT region */
/* Create new SPU region */ /* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) ); memset( &fmt, 0, sizeof(video_format_t) );
fmt.i_chroma = VLC_FOURCC('Y','U','V','P'); fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
...@@ -1404,10 +1418,10 @@ static subpicture_t *render( decoder_t *p_dec ) ...@@ -1404,10 +1418,10 @@ static subpicture_t *render( decoder_t *p_dec )
pp_spu_region = &p_spu_region->p_next; pp_spu_region = &p_spu_region->p_next;
/* Build palette */ /* Build palette */
fmt.p_palette->i_entries = p_region->i_depth == 1 ? 4 : fmt.p_palette->i_entries = (p_region->i_depth == 1) ? 4 :
p_region->i_depth == 2 ? 16 : 256; ( (p_region->i_depth == 2) ? 16 : 256 );
p_color = (p_region->i_depth == 1) ? p_clut->c_2b : p_color = (p_region->i_depth == 1) ? p_clut->c_2b :
(p_region->i_depth == 2) ? p_clut->c_4b : p_clut->c_8b; ( (p_region->i_depth == 2) ? p_clut->c_4b : p_clut->c_8b );
for( j = 0; j < fmt.p_palette->i_entries; j++ ) for( j = 0; j < fmt.p_palette->i_entries; j++ )
{ {
fmt.p_palette->palette[j][0] = p_color[j].Y; fmt.p_palette->palette[j][0] = p_color[j].Y;
...@@ -1434,7 +1448,7 @@ static subpicture_t *render( decoder_t *p_dec ) ...@@ -1434,7 +1448,7 @@ static subpicture_t *render( decoder_t *p_dec )
{ {
dvbsub_objectdef_t *p_object_def = &p_region->p_object_defs[j]; dvbsub_objectdef_t *p_object_def = &p_region->p_object_defs[j];
if( p_object_def->i_type != 1 || !p_object_def->psz_text ) if( ( p_object_def->i_type != 1 ) || ( !p_object_def->psz_text ) )
continue; continue;
/* Create new SPU region */ /* Create new SPU region */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment