git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 2/3] pretty.c: capture invalid trailer argument

From
Hariom verma <hariom18599@gmail.com>
Date
Jan 30, 2021, 19:00 UTC
Message-ID
<CA+CkUQ-_HQG4UtdZGGc3mpXB3OnsZ0kzAPZfLLP2sV1HY9tw6A@mail.gmail.com>
In-Reply-To
<xmqqsg6jqomc.fsf@gitster.c.googlers.com>
Hi,
On Sat, Jan 30, 2021 at 5:31 AM Junio C Hamano <gitster@pobox.com> wrote:
Show 18 quoted lines
>
> "Hariom Verma via GitGitGadget" <gitgitgadget@gmail.com> writes:
>
> > +                     size_t invalid_arg_len = strcspn(*arg, ",)");
> > +                     *invalid_arg = xstrndup(*arg, invalid_arg_len);
> > +                     return 1;
>
> How about doing this only when invalid_arg is not NULL, i.e.
>
>         } else if (!match_placeholder_bool_arg(....) &&
>                    ...
>                    !match_placeholder_bool_arg(....)) {
>                 if (invalid_arg) {
>                         size_t len = strcspn(*arg, ",)");
>                         *invalid_arg = xstrndup(*arg, len);
>                 }
>                 return -1;
>         }
Sounds like an improvement to the current version. Will change.
Show 35 quoted lines
> Note that I just used 'len'; when the scope of a variable is so
> short, it is clear the length of what thing it refers to from the
> context, and there is no point in using a variable name that long.
>
> In any case, by doing so, the callers that are not interested in the
> report can just pass NULL, which means ...
>
> > @@ -1464,12 +1472,13 @@ static size_t format_commit_one(struct strbuf *sb, /* in UTF-8 */
> >               struct strbuf sepbuf = STRBUF_INIT;
> >               struct strbuf kvsepbuf = STRBUF_INIT;
> >               size_t ret = 0;
> > +             char *unused = NULL;
>
> ... this will become unneeded, and ...
>
> >               opts.no_divider = 1;
> >
> >               if (*arg == ':') {
> >                       arg++;
> > -                     if (format_set_trailers_options(&opts, &filter_list, &sepbuf, &kvsepbuf, &arg))
> > +                     if (format_set_trailers_options(&opts, &filter_list, &sepbuf, &kvsepbuf, &arg, &unused))
> >                               goto trailer_out;
>
> ... this will pass NULL, and ...
>
> >               }
> >               if (*arg == ')') {
> > @@ -1479,6 +1488,7 @@ static size_t format_commit_one(struct strbuf *sb, /* in UTF-8 */
> >       trailer_out:
> >               string_list_clear(&filter_list, 0);
> >               strbuf_release(&sepbuf);
> > +             free((char *)unused);
>
> ... this will become unneeded.
>

Thanks, Hariom Verma

Previous: Junio C HamanoNext: Junio C Hamano
Message 12 of 43 in “Unify trailers formatting logic for pretty.c and ref-filter.c”
  1. 0/2 Unify trailers formatting logic for pretty.c and ref-filter.cHariom Verma via GitGitGadget, Sep 5, 2020
  2. 1/2 pretty.c: refactor trailer logic to `format_set_trailers_options()`Hariom Verma via GitGitGadget, Sep 5, 2020
  3. René ScharfeSep 5, 2020
  4. 2/2 ref-filter: using pretty.c logic for trailersHariom Verma via GitGitGadget, Sep 5, 2020
  5. 0/3 Unify trailers formatting logic for pretty.c and ref-filter.cHariom Verma via GitGitGadget, Jan 29, 2021
  6. 1/3 pretty.c: refactor trailer logic to `format_set_trailers_options()`Hariom Verma via GitGitGadget, Jan 29, 2021
  7. Junio C HamanoJan 29, 2021
  8. 2/3 pretty.c: capture invalid trailer argumentHariom Verma via GitGitGadget, Jan 29, 2021
  9. Christian CouderJan 29, 2021
  10. Hariom vermaJan 30, 2021
  11. Junio C HamanoJan 30, 2021
  12. Hariom vermaJan 30, 2021
  13. Junio C HamanoJan 30, 2021
  14. Hariom vermaJan 30, 2021
  15. 3/3 ref-filter: use pretty.c logic for trailersHariom Verma via GitGitGadget, Jan 29, 2021
  16. Ævar Arnfjörð BjarmasonJan 30, 2021
  17. Hariom vermaFeb 4, 2021
  18. Ævar Arnfjörð BjarmasonFeb 4, 2021
  19. Junio C HamanoJan 30, 2021
  20. Junio C HamanoJan 30, 2021
  21. Hariom vermaJan 30, 2021
  22. Junio C HamanoJan 30, 2021
  23. 0/3 Unify trailers formatting logic for pretty.c and ref-filter.cHariom Verma via GitGitGadget, Feb 6, 2021
  24. 1/3 pretty.c: refactor trailer logic to `format_set_trailers_options()`Hariom Verma via GitGitGadget, Feb 6, 2021
  25. 2/3 pretty.c: capture invalid trailer argumentHariom Verma via GitGitGadget, Feb 6, 2021
  26. 3/3 ref-filter: use pretty.c logic for trailersHariom Verma via GitGitGadget, Feb 6, 2021
  27. Junio C HamanoFeb 7, 2021
  28. Hariom vermaFeb 7, 2021
  29. Junio C HamanoFeb 7, 2021
  30. Hariom vermaFeb 7, 2021
  31. Junio C HamanoFeb 7, 2021
  32. Hariom vermaFeb 8, 2021
  33. Junio C HamanoFeb 8, 2021
  34. Junio C HamanoFeb 7, 2021
  35. Junio C HamanoFeb 7, 2021
  36. 0/4 Unify trailers formatting logic for pretty.c and ref-filter.cHariom Verma via GitGitGadget, Feb 13, 2021
  37. 1/4 t6300: use function to test trailer optionsHariom Verma via GitGitGadget, Feb 13, 2021
  38. 2/4 pretty.c: refactor trailer logic to `format_set_trailers_options()`Hariom Verma via GitGitGadget, Feb 13, 2021
  39. 3/4 pretty.c: capture invalid trailer argumentHariom Verma via GitGitGadget, Feb 13, 2021
  40. 4/4 ref-filter: use pretty.c logic for trailersHariom Verma via GitGitGadget, Feb 13, 2021
  41. brian m. carlsonFeb 8, 2021
  42. brian m. carlsonFeb 9, 2021
  43. Junio C HamanoFeb 9, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.