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

Re: [PATCH 07/11] rerere: use repo_read_index_or_die

From
Thomas Gummerer <t.gummerer@gmail.com>
Date
May 20, 2018, 17:45 UTC
Message-ID
<20180520174537.GA18193@hank.intra.tgummerer.com>
In-Reply-To
<20180516222118.233868-8-sbeller@google.com>
On 05/16, Stefan Beller wrote:
> By switching to repo_read_index_or_die, we'll get a slightly different
> error message ("index file corrupt") as well as localization of it.

Apart from the slightly different error message, and the localization (both of which I think are a good thing), I notice that this also turns a "return error(...)" into a "die(...)". I thought we were going more towards not 'die'ing in libgit.a code, and letting the caller handling the errors? Either way I think this change should be described in the commit message.

Also all other messages in 'rerere.c' are currently not translated. I'm currently working on a series that includes a patch to do just that (amongst some other changes to 'rerere'), which I'm hoping to send soon-ish, but the textual conflicts should we still want this patch should be easy to solve.

Show 50 quoted lines
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
>  rerere.c | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/rerere.c b/rerere.c
> index 18cae2d11c9..5f35dd66f90 100644
> --- a/rerere.c
> +++ b/rerere.c
> @@ -10,6 +10,7 @@
>  #include "attr.h"
>  #include "pathspec.h"
>  #include "sha1-lookup.h"
> +#include "repository.h"
>  
>  #define RESOLVED 0
>  #define PUNTED 1
> @@ -567,8 +568,7 @@ static int check_one_conflict(int i, int *type)
>  static int find_conflict(struct string_list *conflict)
>  {
>  	int i;
> -	if (read_cache() < 0)
> -		return error("Could not read index");
> +	repo_read_index_or_die(the_repository);
>  
>  	for (i = 0; i < active_nr;) {
>  		int conflict_type;
> @@ -600,8 +600,7 @@ int rerere_remaining(struct string_list *merge_rr)
>  	int i;
>  	if (setup_rerere(merge_rr, RERERE_READONLY))
>  		return 0;
> -	if (read_cache() < 0)
> -		return error("Could not read index");
> +	repo_read_index_or_die(the_repository);
>  
>  	for (i = 0; i < active_nr;) {
>  		int conflict_type;
> @@ -1103,8 +1102,7 @@ int rerere_forget(struct pathspec *pathspec)
>  	struct string_list conflict = STRING_LIST_INIT_DUP;
>  	struct string_list merge_rr = STRING_LIST_INIT_DUP;
>  
> -	if (read_cache() < 0)
> -		return error("Could not read index");
> +	repo_read_index_or_die(the_repository);
>  
>  	fd = setup_rerere(&merge_rr, RERERE_NOAUTOUPDATE);
>  	if (fd < 0)
> -- 
> 2.17.0.582.gccdcbd54c44.dirty
> 
Previous: Stefan BellerNext: Stefan Beller
Message 12 of 38 in “grep: handle corrupt index files early”
  1. grep: handle corrupt index files earlyStefan Beller, May 15, 2018
  2. Johannes SchindelinMay 15, 2018
  3. Duy NguyenMay 15, 2018
  4. Stefan BellerMay 15, 2018
  5. Duy NguyenMay 16, 2018
  6. 00/11 Stefan Beller, May 16, 2018
  7. 01/11 grep: handle corrupt index files earlyStefan Beller, May 16, 2018
  8. 06/11 read_cache: use repo_read_index_or_die with different error messagesStefan Beller, May 16, 2018
  9. 09/11 checkout-index: switch to repo_read_indexStefan Beller, May 16, 2018
  10. 05/11 builtin/ls-files: use repo_read_index_or_dieStefan Beller, May 16, 2018
  11. 07/11 rerere: use repo_read_index_or_dieStefan Beller, May 16, 2018
  12. Thomas GummererMay 20, 2018
  13. Stefan BellerMay 21, 2018
  14. 11/11 read_cache: convert most calls to repo_read_index_or_dieStefan Beller, May 16, 2018
  15. Brandon WilliamsMay 16, 2018
  16. Duy NguyenMay 19, 2018
  17. Duy NguyenMay 19, 2018
  18. 08/11 check-attr: switch to repo_read_index_or_dieStefan Beller, May 16, 2018
  19. 10/11 test helpers: switch to repo_read_index_or_dieStefan Beller, May 16, 2018
  20. 02/11 repository: introduce repo_read_index_or_dieStefan Beller, May 16, 2018
  21. Duy NguyenMay 19, 2018
  22. Stefan BellerMay 21, 2018
  23. Brandon WilliamsMay 21, 2018
  24. Stefan BellerMay 21, 2018
  25. Duy NguyenMay 22, 2018
  26. Why do we have both x*() and *_or_die() for "do or die"?Ævar Arnfjörð Bjarmason, May 22, 2018
  27. Duy NguyenMay 22, 2018
  28. Jonathan NiederMay 22, 2018
  29. Stefan BellerMay 22, 2018
  30. Junio C HamanoMay 23, 2018
  31. 03/11 builtin/grep: use repo_read_index_or_dieStefan Beller, May 16, 2018
  32. 04/11 submodule: use repo_read_index_or_dieStefan Beller, May 16, 2018
  33. Duy NguyenMay 19, 2018
  34. Junio C HamanoMay 17, 2018
  35. Stefan BellerMay 17, 2018
  36. Junio C HamanoMay 17, 2018
  37. Brandon WilliamsMay 15, 2018
  38. Junio C HamanoMay 15, 2018

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.