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

Re: [PATCH 2/2] fetch: use argv_array instead of hand-building arrays

From
Jens Lehmann <jens.lehmann@web.de>
Date
Sep 1, 2012, 14:34 UTC
Message-ID
<50421CF8.60703@web.de>
In-Reply-To
<20120901112735.GB19163@sigill.intra.peff.net>
Am 01.09.2012 13:27, schrieb Jeff King:
Show 12 quoted lines
> Fetch invokes itself recursively when recursing into
> submodules or handling "fetch --multiple". In both cases, it
> builds the child's command line by pushing options onto a
> statically-sized array. In both cases, the array is
> currently just big enough to handle the largest possible
> case. However, this technique is brittle and error-prone, so
> let's replace it with a dynamic argv_array.
> 
> Signed-off-by: Jeff King <peff@peff.net>
> ---
> Not very well tested by me, but hopefully it is simple enough that I
> managed not to screw it up.

This is definitely an improvement, and I can't spot any problems either.

> It may be that fetch_populated_submodules would also benefit from
> conversion (here I just pass in the argc and argv separately), but I
> didn't look.

Yes, it does some similar brittle stuff and should be changed to use the argv-array too. I'll look into that.

Previous: Jeff KingNext: Jens Lehmann
Message 21 of 26 in “Bringing a bit more sanity to $GIT_DIR/objects/info/alternates?”
  1. Junio C HamanoAug 5, 2012
  2. Michael HaggertyAug 5, 2012
  3. Junio C HamanoAug 5, 2012
  4. Jeff KingAug 7, 2012
  5. Junio C HamanoAug 6, 2012
  6. Sascha CunzAug 8, 2012
  7. Hallvard Breien FurusethAug 11, 2012
  8. Oswald BuddenhagenAug 27, 2012
  9. GC of alternate object store (was: Bringing a bit more sanity to $GIT_DIR/objects/info/alternates?)Hallvard Breien Furuseth, Aug 28, 2012
  10. Oswald BuddenhagenAug 29, 2012
  11. Junio C HamanoAug 29, 2012
  12. Oswald BuddenhagenAug 30, 2012
  13. Junio C HamanoAug 30, 2012
  14. Oswald BuddenhagenAug 31, 2012
  15. Dan JohnsonAug 31, 2012
  16. Junio C HamanoAug 31, 2012
  17. fetch --all: pass --tags/--no-tags through to each remoteDan Johnson, Sep 1, 2012
  18. Jeff KingSep 1, 2012
  19. 1/2 argv-array: add pop functionJeff King, Sep 1, 2012
  20. 2/2 fetch: use argv_array instead of hand-building arraysJeff King, Sep 1, 2012
  21. Jens LehmannSep 1, 2012
  22. submodule: use argv_array instead of hand-building arraysJens Lehmann, Sep 1, 2012
  23. Jeff KingSep 1, 2012
  24. 3/2 argv-array: fix bogus cast when freeing arrayJeff King, Sep 1, 2012
  25. [PATCHv2] fetch --all: pass --tags/--no-tags through to each remoteDan Johnson, Sep 5, 2012
  26. Junio C HamanoSep 7, 2012

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.