+
+/*****************************************************************************
+ * PacketizeSub: packetize an unit (here copy a complete block )
+ *****************************************************************************/
+static block_t *PacketizeSub( decoder_t *p_dec, block_t **pp_block )
+{
+ block_t *p_block;
+
+ if( pp_block == NULL || *pp_block == NULL )
+ return NULL;
+ if( (*pp_block)->i_flags&(BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED) )
+ {
+ block_Release( *pp_block );
+ return NULL;
+ }
+
+ p_block = *pp_block;
+ *pp_block = NULL;
+
+ if( p_block->i_dts <= 0 )
+ {
+ p_block->i_dts = p_block->i_pts;
+ }
+
+ if( p_block->i_dts <= 0 )
+ {
+ msg_Dbg( p_dec, "need dts > 0" );
+ block_Release( p_block );
+ return NULL;
+ }
+
+ return p_block;
+}