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

Re: [PATCH] run-command: introduce CHILD_PROCESS_INIT

From
Jeff King <peff@peff.net>
Date
Aug 17, 2014, 07:12 UTC
Message-ID
<20140817071230.GB23808@peff.net>
In-Reply-To
<53EFE15B.7030805@web.de>
On Sun, Aug 17, 2014 at 12:55:23AM +0200, René Scharfe wrote:
Show 5 quoted lines
> Most struct child_process variables are cleared using memset right after
> declaration.  Provide a macro, CHILD_PROCESS_INIT, that can be used to
> initialize them statically instead.  That's shorter, doesn't require a
> function call and is slightly more readable (especially given that we
> already have similar macros like STRBUF_INIT, ARGV_ARRAY_INIT etc.).

I think one reason we never had an INIT macro here is that you cannot simply use the struct after zero-ing it anyway. That's just the first step, and then you have to tweak a bunch of fields to get what you want. So the memset is just one setup line out of many.

Still, I think this is probably an improvement for the reasons you give above, and we can still memset() in any cases where it makes sense.

Patch itself looks obviously correct.
-Peff
Previous: René ScharfeNext: René Scharfe
Message 2 of 11 in “run-command: introduce CHILD_PROCESS_INIT”
  1. run-command: introduce CHILD_PROCESS_INITRené Scharfe, Aug 16, 2014
  2. Jeff KingAug 17, 2014
  3. René ScharfeAug 17, 2014
  4. Jeff KingAug 17, 2014
  5. Johannes SixtAug 17, 2014
  6. Jeff KingAug 17, 2014
  7. Junio C HamanoAug 18, 2014
  8. 1/4 run-command: introduce CHILD_PROCESS_INITRené Scharfe, Aug 19, 2014
  9. 2/4 run-command: introduce child_process_init()René Scharfe, Aug 19, 2014
  10. 3/4 run-command: call run_command_v_opt_cd_env() instead of duplicating itRené Scharfe, Aug 19, 2014
  11. 4/4 run-command: inline prepare_run_command_v_opt()René Scharfe, Aug 19, 2014

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.