<html><head></head><body>The casts are harmful as they make the definitions syntactically not constant.<br><br><div class="gmail_quote">Le 2 septembre 2019 11:11:59 GMT+02:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">On 2019-09-02 10:04, Thomas Guillem wrote:<br>> <br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><br>On Fri, Aug 30, 2019, at 08:27, Steve Lhomme wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"><hr>   src/input/decoder.c | 20 ++++++++++++--------<br>   1 file changed, 12 insertions(+), 8 deletions(-)<br><br> diff --git a/src/input/decoder.c b/src/input/decoder.c<br> index 4170e942e2..86ef7efae6 100644<br> --- a/src/input/decoder.c<br> +++ b/src/input/decoder.c<br> @@ -109,6 +109,10 @@ struct decoder_owner<br>       /* -- Theses variables need locking on read *and* write -- */<br>       /* Preroll */<br>       vlc_tick_t i_preroll_end;<br> +<br> +#define PREROLL_NONE   ((vlc_tick_t) INT64_MIN)<br> +#define PREROLL_FORCED ((vlc_tick_t) INT64_MAX)<br></blockquote>I think Rémi said that the cast were useless. Why are you keeping them ?<br></blockquote><br>The casts are useless for the compiler but I think it's more readable <br>what the defines are and where they can be used.<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"> +<br>       /* Pause & Rate */<br>       bool reset_out_state;<br>       vlc_tick_t pause_date;<br> @@ -773,11 +777,11 @@ static void DecoderWaitUnblock( struct<br> decoder_owner *p_owner )<br>   static inline void DecoderUpdatePreroll( vlc_tick_t *pi_preroll, const<br> block_t *p )<br>   {<br>       if( p->i_flags & BLOCK_FLAG_PREROLL )<br> -        *pi_preroll = (vlc_tick_t)INT64_MAX;<br> +        *pi_preroll = PREROLL_FORCED;<br>       /* Check if we can use the packet for end of preroll */<br>       else if( (p->i_flags & BLOCK_FLAG_DISCONTINUITY) &&<br>                (p->i_buffer == 0 || (p->i_flags & BLOCK_FLAG_CORRUPTED))<br> )<br> -        *pi_preroll = (vlc_tick_t)INT64_MAX;<br> +        *pi_preroll = PREROLL_FORCED;<br>       else if( p->i_dts != VLC_TICK_INVALID )<br>           *pi_preroll = __MIN( *pi_preroll, p->i_dts );<br>       else if( p->i_pts != VLC_TICK_INVALID )<br> @@ -986,7 +990,7 @@ static int DecoderPlayVideo( struct decoder_owner<br> *p_owner, picture_t *p_picture<br>       }<br>   <br>       vlc_mutex_lock( &p_owner->lock );<br> -    bool prerolled = p_owner->i_preroll_end != (vlc_tick_t)INT64_MIN;<br> +    bool prerolled = p_owner->i_preroll_end != PREROLL_NONE;<br>       if( prerolled && p_owner->i_preroll_end > p_picture->date )<br>       {<br>           vlc_mutex_unlock( &p_owner->lock );<br> @@ -994,7 +998,7 @@ static int DecoderPlayVideo( struct decoder_owner<br> *p_owner, picture_t *p_picture<br>           return VLC_SUCCESS;<br>       }<br>   <br> -    p_owner->i_preroll_end = (vlc_tick_t)INT64_MIN;<br> +    p_owner->i_preroll_end = PREROLL_NONE;<br>   <br>       if( unlikely(prerolled) )<br>       {<br> @@ -1116,7 +1120,7 @@ static int DecoderPlayAudio( struct decoder_owner<br> *p_owner, block_t *p_audio )<br>       }<br>   <br>       vlc_mutex_lock( &p_owner->lock );<br> -    bool prerolled = p_owner->i_preroll_end != (vlc_tick_t)INT64_MIN;<br> +    bool prerolled = p_owner->i_preroll_end != PREROLL_NONE;<br>       if( prerolled && p_owner->i_preroll_end > p_audio->i_pts )<br>       {<br>           vlc_mutex_unlock( &p_owner->lock );<br> @@ -1124,7 +1128,7 @@ static int DecoderPlayAudio( struct decoder_owner<br> *p_owner, block_t *p_audio )<br>           return VLC_SUCCESS;<br>       }<br>   <br> -    p_owner->i_preroll_end = (vlc_tick_t)INT64_MIN;<br> +    p_owner->i_preroll_end = PREROLL_NONE;<br>   <br>       if( unlikely(prerolled) )<br>       {<br> @@ -1446,7 +1450,7 @@ static void DecoderProcessFlush( struct<br> decoder_owner *p_owner )<br>           }<br>       }<br>   <br> -    p_owner->i_preroll_end = (vlc_tick_t)INT64_MIN;<br> +    p_owner->i_preroll_end = PREROLL_NONE;<br>       vlc_mutex_unlock( &p_owner->lock );<br>   }<br>   <br> @@ -1744,7 +1748,7 @@ static struct decoder_owner * CreateDecoder(<br> vlc_object_t *p_parent,<br>       p_dec = &p_owner->dec;<br>   <br>       p_owner->p_clock = p_clock;<br> -    p_owner->i_preroll_end = (vlc_tick_t)INT64_MIN;<br> +    p_owner->i_preroll_end = PREROLL_NONE;<br>       p_owner->p_resource = p_resource;<br>       p_owner->cbs = cbs;<br>       p_owner->cbs_userdata = cbs_userdata;<br> -- <br> 2.17.1<hr> vlc-devel mailing list<br> To unsubscribe or modify your subscription options:<br> <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>