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

Re: [PATCH v2 1/5] scalar-unregister: handle error codes greater than 0

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 17, 2022, 14:33 UTC
Message-ID
<xmqq4jyb0wju.fsf@gitster.g>
In-Reply-To
<36fc3cb604d835f06bd5eca22b6eeff73e7117c8.1660694290.git.gitgitgadget@gmail.com>
"Victoria Dye via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 6 quoted lines
> From: Victoria Dye <vdye@github.com>
>
> When 'scalar unregister' tries to disable maintenance and remove an
> enlistment, ensure that the return value is nonzero if either operation
> produces *any* nonzero return value, not just when they return a value less
> than 0.

Interesting. Did this actually cause problems in the wild? Just being curious.

The return values from toggle_maintenance() and add_or_remove() are what scalar.c::run_git() returns, which in turn come from run_command() and eventually come from wait_or_whine(), so it very well can be a positive non-zero value that signals a failure. It is good to be prepared to see not just negative values but also positive ones.

Show 22 quoted lines
> Signed-off-by: Victoria Dye <vdye@github.com>
> ---
>  contrib/scalar/scalar.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/contrib/scalar/scalar.c b/contrib/scalar/scalar.c
> index 97e71fe19cd..e888fa5408e 100644
> --- a/contrib/scalar/scalar.c
> +++ b/contrib/scalar/scalar.c
> @@ -253,10 +253,10 @@ static int unregister_dir(void)
>  {
>  	int res = 0;
>  
> -	if (toggle_maintenance(0) < 0)
> +	if (toggle_maintenance(0))
>  		res = -1;
>  
> -	if (add_or_remove_enlistment(0) < 0)
> +	if (add_or_remove_enlistment(0))
>  		res = -1;
>  
>  	return res;
Previous: Victoria Dye via GitGitGadgetNext: Victoria Dye via GitGitGadget
Message 13 of 39 in “scalar: enable built-in FSMonitor”
  1. 0/3 scalar: enable built-in FSMonitorVictoria Dye via GitGitGadget, Aug 16, 2022
  2. 1/3 scalar: enable built-in FSMonitor on `register`Matthew John Cheetham via GitGitGadget, Aug 16, 2022
  3. Junio C HamanoAug 16, 2022
  4. Victoria DyeAug 16, 2022
  5. Junio C HamanoAug 16, 2022
  6. 2/3 scalar unregister: stop FSMonitor daemonJohannes Schindelin via GitGitGadget, Aug 16, 2022
  7. 3/3 scalar: update technical doc roadmap with FSMonitor supportVictoria Dye via GitGitGadget, Aug 16, 2022
  8. Junio C HamanoAug 16, 2022
  9. Victoria DyeAug 16, 2022
  10. Junio C HamanoAug 16, 2022
  11. 0/5 scalar: enable built-in FSMonitorVictoria Dye via GitGitGadget, Aug 16, 2022
  12. 1/5 scalar-unregister: handle error codes greater than 0Victoria Dye via GitGitGadget, Aug 16, 2022
  13. Junio C HamanoAug 17, 2022
  14. 2/5 scalar-[un]register: clearly indicate source of errorVictoria Dye via GitGitGadget, Aug 16, 2022
  15. 5/5 scalar: update technical doc roadmap with FSMonitor supportVictoria Dye via GitGitGadget, Aug 16, 2022
  16. 3/5 scalar: enable built-in FSMonitor on `register`Matthew John Cheetham via GitGitGadget, Aug 16, 2022
  17. Derrick StoleeAug 17, 2022
  18. Junio C HamanoAug 17, 2022
  19. Victoria DyeAug 17, 2022
  20. Derrick StoleeAug 18, 2022
  21. Junio C HamanoAug 17, 2022
  22. 4/5 scalar unregister: stop FSMonitor daemonJohannes Schindelin via GitGitGadget, Aug 16, 2022
  23. Derrick StoleeAug 17, 2022
  24. Victoria DyeAug 17, 2022
  25. Derrick StoleeAug 17, 2022
  26. Derrick StoleeAug 17, 2022
  27. 0/8 scalar: enable built-in FSMonitorVictoria Dye via GitGitGadget, Aug 18, 2022
  28. 1/8 scalar: constrain enlistment searchVictoria Dye via GitGitGadget, Aug 18, 2022
  29. Derrick StoleeAug 19, 2022
  30. 2/8 scalar-unregister: handle error codes greater than 0Victoria Dye via GitGitGadget, Aug 18, 2022
  31. 3/8 scalar-[un]register: clearly indicate source of errorVictoria Dye via GitGitGadget, Aug 18, 2022
  32. 4/8 scalar-delete: do not 'die()' in 'delete_enlistment()'Victoria Dye via GitGitGadget, Aug 18, 2022
  33. 6/8 scalar: enable built-in FSMonitor on `register`Matthew John Cheetham via GitGitGadget, Aug 18, 2022
  34. Derrick StoleeAug 19, 2022
  35. 8/8 scalar: update technical doc roadmap with FSMonitor supportVictoria Dye via GitGitGadget, Aug 18, 2022
  36. 5/8 scalar: move config setting logic into its own functionVictoria Dye via GitGitGadget, Aug 18, 2022
  37. 7/8 scalar unregister: stop FSMonitor daemonJohannes Schindelin via GitGitGadget, Aug 18, 2022
  38. Derrick StoleeAug 19, 2022
  39. Junio C HamanoAug 19, 2022

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.