[FFmpeg-devel] [PATCH v2 10/13] cbs_mpeg2.c: use a while loop with a loop condition instead of an infinite loop
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Sat Feb 5 03:48:56 EET 2022
Scott Theisen:
> This enhances the clarity of the code.
> ---
> libavcodec/cbs_mpeg2.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/libavcodec/cbs_mpeg2.c b/libavcodec/cbs_mpeg2.c
> index d41477620e..afe78eef9a 100644
> --- a/libavcodec/cbs_mpeg2.c
> +++ b/libavcodec/cbs_mpeg2.c
> @@ -148,7 +148,7 @@ static int cbs_mpeg2_split_fragment(CodedBitstreamContext *ctx,
> CodedBitstreamUnitType unit_type;
> uint32_t start_code = -1;
> size_t unit_size;
> - int err, i, final = 0;
> + int err, i = 0, final = 0;
>
> start = avpriv_find_start_code(frag->data, frag->data + frag->data_size,
> &start_code, 1);
> @@ -157,7 +157,7 @@ static int cbs_mpeg2_split_fragment(CodedBitstreamContext *ctx,
> return AVERROR_INVALIDDATA;
> }
>
> - for (i = 0;; i++) {
> + while (!final) {
> unit_type = start_code & 0xff;
>
> if (start == frag->data + frag->data_size) {
> @@ -190,10 +190,8 @@ static int cbs_mpeg2_split_fragment(CodedBitstreamContext *ctx,
> if (err < 0)
> return err;
>
> - if (final)
> - break;
> -
> start = end;
> + i++;
> }
>
> return 0;
I disagree that this enhances clarity: When using a counter, a for loop
is the most natural.
- Andreas
More information about the ffmpeg-devel
mailing list