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

Re: [PATCH 02/18] config: Introduce functions to write non-standard file

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Jul 19, 2011, 20:35 UTC
Message-ID
<20110719203541.GB26557@elie.gateway.2wire.net>
In-Reply-To
<20110719195504.GA3957@sigill.intra.peff.net>
Jeff King wrote:
Show 15 quoted lines
> BTW, I'm unclear why we bother duplicating the filename in the first
> place. It seems like we could go even simpler with:
>
> int git_config_set_multivar(const char *key, const char *value,
>                             const char *value_regex, int multi_replace)
> {
> 	char *config_filename;
>
> 	if (config_exclusive_filename)
> 		config_filename = config_exclusive_filename;
> 	else
> 		config_filename = git_path("config");
>
>         return git_config_set_multivar_in_file(config_filename, key, value,
>                                                value_regex, multi_replace);

FWIW, I suspect that would be a trap waiting to be triggered as soon as git_config_set_multivar_in_file() calls git_path() four times. I.e., it's not about the config_exclusive_filename but about the git_path.

A little micro-optimization might be to do the following. :)
	const char *config_filename;
	char *filename_buf = NULL;
	int result;
	if (config_exclusive_filename)
		config_filename = config_exclusive_filename;
	else
		config_filename = filename_buf = git_pathdup("config");
	result = git_config_set_multivar_in_file(...);
	free(filename_buf);
	return result;
Previous: Jeff KingNext: Junio C Hamano
Message 10 of 34 in “[GSoC update] Sequencer for inclusion v2”
  1. Ramkumar RamachandraJul 19, 2011
  2. 01/18 advice: Introduce error_resolve_conflictRamkumar Ramachandra, Jul 19, 2011
  3. Phil HordJul 21, 2011
  4. Jeff KingJul 22, 2011
  5. Ramkumar RamachandraJul 24, 2011
  6. Junio C HamanoJul 24, 2011
  7. Phil HordJul 25, 2011
  8. 02/18 config: Introduce functions to write non-standard fileRamkumar Ramachandra, Jul 19, 2011
  9. Jeff KingJul 19, 2011
  10. Jonathan NiederJul 19, 2011
  11. Junio C HamanoJul 19, 2011
  12. Jeff KingJul 19, 2011
  13. Ramkumar RamachandraJul 24, 2011
  14. 03/18 revert: Simplify and inline add_message_to_msgRamkumar Ramachandra, Jul 19, 2011
  15. 04/18 revert: Don't check lone argument in get_encodingRamkumar Ramachandra, Jul 19, 2011
  16. 05/18 revert: Rename no_replay to record_originRamkumar Ramachandra, Jul 19, 2011
  17. 06/18 revert: Propogate errors upwards from do_pick_commitRamkumar Ramachandra, Jul 19, 2011
  18. 07/18 revert: Eliminate global "commit" variableRamkumar Ramachandra, Jul 19, 2011
  19. 08/18 revert: Introduce struct to keep command-line optionsRamkumar Ramachandra, Jul 19, 2011
  20. 09/18 revert: Separate cmdline parsing from functional codeRamkumar Ramachandra, Jul 19, 2011
  21. 10/18 revert: Don't create invalid replay_opts in parse_argsRamkumar Ramachandra, Jul 19, 2011
  22. 11/18 revert: Save data for continuing after conflict resolutionRamkumar Ramachandra, Jul 19, 2011
  23. 12/18 revert: Save command-line options for continuing operationRamkumar Ramachandra, Jul 19, 2011
  24. 13/18 revert: Make pick_commits functionally act on a commit listRamkumar Ramachandra, Jul 19, 2011
  25. 14/18 revert: Introduce --reset to remove sequencer stateRamkumar Ramachandra, Jul 19, 2011
  26. 15/18 reset: Make reset remove the sequencer stateRamkumar Ramachandra, Jul 19, 2011
  27. 16/18 revert: Remove sequencer state when no commits are pendingRamkumar Ramachandra, Jul 19, 2011
  28. 17/18 revert: Don't implictly stomp pending sequencer operationRamkumar Ramachandra, Jul 19, 2011
  29. 18/18 revert: Introduce --continue to continue the operationRamkumar Ramachandra, Jul 19, 2011
  30. Junio C HamanoJul 19, 2011
  31. Ramkumar RamachandraJul 20, 2011
  32. Junio C HamanoJul 19, 2011
  33. Ramkumar RamachandraJul 24, 2011
  34. Junio C HamanoJul 24, 2011

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.