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

Re: [PATCH 2/3] add read_author_script() to libgit

From
PWPhillip Wood <phillip.wood@talktalk.net>
Date
Oct 10, 2018, 10:14 UTC
Message-ID
<28505444-0798-6fda-6d1b-b9dbc0007123@talktalk.net>
In-Reply-To
<CAPig+cTGYWoW+YiW5tJVPZVie3zsG+pmQiV7k+es-=y9e4=RZw@mail.gmail.com>
Hi Eric

Thanks for looking at this series, sorry it has taken so long for me to reply.

On 14/09/2018 00:49, Eric Sunshine wrote:
Show 44 quoted lines
> On Wed, Sep 12, 2018 at 6:11 AM Phillip Wood <phillip.wood@talktalk.net> wrote:
>> Add read_author_script() to sequencer.c based on the implementation in
>> builtin/am.c and update read_am_author_script() to use
>> read_author_script(). The sequencer code that reads the author script
>> will be updated in the next commit.
>>
>> Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
>> ---
>> diff --git a/builtin/am.c b/builtin/am.c
>> @@ -305,39 +279,16 @@ static int parse_key_value_squoted(char *buf, struct string_list *list)
>>  static int read_am_author_script(struct am_state *state)
>>  {
> 
> This function returns 'int'...
> 
>>         const char *filename = am_path(state, "author-script");
>> +       if (read_author_script(filename, &state->author_name,
>> +                              &state->author_email, &state->author_date, 1))
>> +               exit(128);
> 
> ...but only ever exit()s...
> 
>> +       return 0;
> 
> ... or returns 0.
> 
>>  }
> 
> It's a little disturbing that it now invokes exit() directly rather
> than calling die() since die() may involve extra functionality before
> actually exiting.
> 
> What if, instead of exit()ing directly, you drop the conditional and
> instead return the value of read_author_script():
> 
>     return read_author_script(...);
> 
> and let the caller deal with the zero or non-zero return value as
> usual? (True, you'd get two error messages upon failure rather than
> just one, but that's not necessarily a bad thing.)
> 
> A possibly valid response is that such a change is outside the scope
> of this series since the original code shared this odd architecture of
> sometimes returning 0, sometimes -1, and sometimes die()ing.

My aim was to try and to keep the changes to a minimum as this patch isn't about changing the odd architecture of the original. I could add a follow up patch that cleans things up as you suggest.

Best Wishes
Phillip
Previous: Eric SunshineNext: Eric Sunshine
Message 5 of 41 in “am/rebase: share read_author_script()”
  1. 0/3 am/rebase: share read_author_script()Phillip Wood, Sep 12, 2018
  2. 1/3 am: rename read_author_script()Phillip Wood, Sep 12, 2018
  3. 2/3 add read_author_script() to libgitPhillip Wood, Sep 12, 2018
  4. Eric SunshineSep 13, 2018
  5. Phillip WoodOct 10, 2018
  6. Eric SunshineOct 10, 2018
  7. 3/3 sequencer: use read_author_script()Phillip Wood, Sep 12, 2018
  8. Eric SunshineSep 12, 2018
  9. Eric SunshineSep 14, 2018
  10. Phillip WoodOct 10, 2018
  11. 0/5 am/rebase: share read_author_script()Phillip Wood, Oct 18, 2018
  12. 1/5 am: don't die in read_author_script()Phillip Wood, Oct 18, 2018
  13. Junio C HamanoOct 25, 2018
  14. 2/5 am: improve author-script error reportingPhillip Wood, Oct 18, 2018
  15. Junio C HamanoOct 25, 2018
  16. 3/5 am: rename read_author_script()Phillip Wood, Oct 18, 2018
  17. 5/5 sequencer: use read_author_script()Phillip Wood, Oct 18, 2018
  18. 4/5 add read_author_script() to libgitPhillip Wood, Oct 18, 2018
  19. Junio C HamanoOct 25, 2018
  20. Phillip WoodOct 26, 2018
  21. Junio C HamanoOct 26, 2018
  22. 0/5 am/rebase: share read_author_script()Phillip Wood, Oct 30, 2018
  23. 2/5 am: improve author-script error reportingPhillip Wood, Oct 30, 2018
  24. 1/5 am: don't die in read_author_script()Phillip Wood, Oct 30, 2018
  25. 4/5 add read_author_script() to libgitPhillip Wood, Oct 30, 2018
  26. 5/5 sequencer: use read_author_script()Phillip Wood, Oct 30, 2018
  27. 3/5 am: rename read_author_script()Phillip Wood, Oct 30, 2018
  28. Junio C HamanoOct 31, 2018
  29. Phillip WoodOct 31, 2018
  30. 0/5 am/rebase: share read_author_script()Phillip Wood, Oct 31, 2018
  31. 2/5 am: improve author-script error reportingPhillip Wood, Oct 31, 2018
  32. Eric SunshineNov 4, 2018
  33. Junio C HamanoNov 5, 2018
  34. 3/5 am: rename read_author_script()Phillip Wood, Oct 31, 2018
  35. 5/5 sequencer: use read_author_script()Phillip Wood, Oct 31, 2018
  36. 4/5 add read_author_script() to libgitPhillip Wood, Oct 31, 2018
  37. 1/5 am: don't die in read_author_script()Phillip Wood, Oct 31, 2018
  38. Junio C HamanoNov 1, 2018
  39. 2/5 am: improve author-script error reportingJunio C Hamano, Nov 1, 2018
  40. 4/5 add read_author_script() to libgitJunio C Hamano, Nov 1, 2018
  41. Phillip WoodNov 1, 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.