Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: "softworkz ." <softworkz-at-hotmail.com@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 1/4] fftools/textformat: narrow variable scopes
Date: Thu, 12 Jun 2025 16:10:17 +0000
Message-ID: <DM8P223MB0365BE8F7BA532955F797DF3BA74A@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <395F8F80-4C17-48A4-AD34-442029EF7D11@gmail.com>



> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
> Marvin Scholz
> Sent: Donnerstag, 12. Juni 2025 13:25
> To: FFmpeg development discussions and patches <ffmpeg-
> devel@ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH 1/4] fftools/textformat: narrow
> variable scopes
> 
> 
> 
> On 12 Jun 2025, at 4:26, softworkz . wrote:
> 
> > Hi Marvin,
> >
> >> -----Original Message-----
> >> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf
> Of
> >> Marvin Scholz
> >> Sent: Mittwoch, 11. Juni 2025 22:42
> >> To: ffmpeg-devel@ffmpeg.org
> >> Subject: [FFmpeg-devel] [PATCH 1/4] fftools/textformat: narrow
> >> variable scopes
> >>
> >> ---
> >>  fftools/textformat/avtextformat.c | 15 ++++++---------
> >>  1 file changed, 6 insertions(+), 9 deletions(-)
> >>
> >> diff --git a/fftools/textformat/avtextformat.c
> >> b/fftools/textformat/avtextformat.c
> >> index 14779e6f0c..f1811abb1c 100644
> >> --- a/fftools/textformat/avtextformat.c
> >> +++ b/fftools/textformat/avtextformat.c
> >> @@ -101,7 +101,6 @@ static void bprint_bytes(AVBPrint *bp, const
> >> uint8_t *ubuf, size_t ubuf_size)
> >>  int avtext_context_close(AVTextFormatContext **ptctx)
> >>  {
> >>      AVTextFormatContext *tctx = *ptctx;
> >> -    int i;
> >>      int ret = 0;
> >>
> >>      if (!tctx)
> >> @@ -117,7 +116,7 @@ int avtext_context_close(AVTextFormatContext
> >> **ptctx)
> >>          if (tctx->formatter->priv_class)
> >>              av_opt_free(tctx->priv);
> >>      }
> >> -    for (i = 0; i < SECTION_MAX_NB_LEVELS; i++)
> >> +    for (int i = 0; i < SECTION_MAX_NB_LEVELS; i++)
> >>          av_bprint_finalize(&tctx->section_pbuf[i], NULL);
> >>      av_freep(&tctx->priv);
> >>      av_opt_free(tctx);
> >> @@ -130,7 +129,7 @@ int avtext_context_open(AVTextFormatContext
> >> **ptctx, const AVTextFormatter *form
> >>                          const AVTextFormatSection *sections,
> int
> >> nb_sections, AVTextFormatOptions options, char *show_data_hash)
> >>  {
> >>      AVTextFormatContext *tctx;
> >> -    int i, ret = 0;
> >> +    int ret = 0;
> >>
> >>      av_assert0(ptctx && formatter);
> >>
> >> @@ -202,7 +201,7 @@ int avtext_context_open(AVTextFormatContext
> >> **ptctx, const AVTextFormatter *form
> >>              if (ret == AVERROR(EINVAL)) {
> >>                  const char *n;
> >>                  av_log(NULL, AV_LOG_ERROR, "Unknown hash
> algorithm
> >> '%s'\nKnown algorithms:", show_data_hash);
> >> -                for (i = 0; (n = av_hash_names(i)); i++)
> >> +                for (unsigned i = 0; (n = av_hash_names(i));
> i++)
> >>                      av_log(NULL, AV_LOG_ERROR, " %s", n);
> >>                  av_log(NULL, AV_LOG_ERROR, "\n");
> >>              }
> >> @@ -525,13 +524,13 @@ void avtext_print_data(AVTextFormatContext
> >> *tctx, const char *key,
> >>  {
> >>      AVBPrint bp;
> >>      unsigned offset = 0;
> >> -    int l, i;
> >> +    int i;
> >>
> >>      av_bprint_init(&bp, 0, AV_BPRINT_SIZE_UNLIMITED);
> >>      av_bprintf(&bp, "\n");
> >>      while (size) {
> >>          av_bprintf(&bp, "%08x: ", offset);
> >> -        l = FFMIN(size, 16);
> >> +        int l = FFMIN(size, 16);
> >>          for (i = 0; i < l; i++) {
> >>              av_bprintf(&bp, "%02x", data[i]);
> >>              if (i & 1)
> >> @@ -571,7 +570,6 @@ void
> avtext_print_integers(AVTextFormatContext
> >> *tctx, const char *key,
> >>  {
> >>      AVBPrint bp;
> >>      unsigned offset = 0;
> >> -    int l, i;
> >>
> >>      if (!key || !data || !format || columns <= 0 || bytes <= 0)
> >>          return;
> >> @@ -580,8 +578,7 @@ void
> avtext_print_integers(AVTextFormatContext
> >> *tctx, const char *key,
> >>      av_bprintf(&bp, "\n");
> >>      while (size) {
> >>          av_bprintf(&bp, "%08x: ", offset);
> >> -        l = FFMIN(size, columns);
> >> -        for (i = 0; i < l; i++) {
> >> +        for (int i = 0, l = FFMIN(size, columns); i < l; i++) {
> >
> > You are changing behavior here because size is changed inside the
> loop.
> > The pre-evaluation into l is intentional.
> >
> 
> I fail to see how I change anything here though? It is still just
> assigned before
> the loop runs, just that l is scoped narrower?

This is the original code:

        l = FFMIN(size, columns);
        for (i = 0; i < l; i++) {
            if      (bytes == 1) av_bprintf(&bp, format, *data);
            else if (bytes == 2) av_bprintf(&bp, format, AV_RN16(data));
            else if (bytes == 4) av_bprintf(&bp, format, AV_RN32(data));
            data += bytes;
            size--;
        }

See the size-- ?


Thanks
sw







_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  reply	other threads:[~2025-06-12 16:10 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-11 20:42 Marvin Scholz
2025-06-11 20:42 ` [FFmpeg-devel] [PATCH 2/4] fftools/textformat: remove noop free Marvin Scholz
2025-06-12  2:28   ` softworkz .
2025-06-11 20:42 ` [FFmpeg-devel] [PATCH 3/4] fftools/textformat: do not return early Marvin Scholz
2025-06-12  2:31   ` softworkz .
2025-06-11 20:42 ` [FFmpeg-devel] [PATCH 4/4] fftools/textformat: remove useless error check Marvin Scholz
2025-06-11 20:53   ` Andreas Rheinhardt
2025-06-11 21:05     ` Marvin Scholz
2025-06-12  2:26 ` [FFmpeg-devel] [PATCH 1/4] fftools/textformat: narrow variable scopes softworkz .
2025-06-12 11:25   ` Marvin Scholz
2025-06-12 16:10     ` softworkz . [this message]
2025-06-12 17:07       ` Marvin Scholz
2025-06-12 17:11         ` softworkz .

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM8P223MB0365BE8F7BA532955F797DF3BA74A@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM \
    --to=softworkz-at-hotmail.com@ffmpeg.org \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git