scalar-[un]register: clearly indicate source of error
When a step in 'register_dir()' or 'unregister_dir()' fails, indicate which step failed with an error message, rather than silently assigning a nonzero return code. Signed-off-by: Victoria Dye <vdye@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Victoria Dye committed
Aug 18, 2022 at 21:40 UTC
d2a79bc953375ed7dd8cb06fd3db92f85c64c206
1 file changed
+9
-8
contrib/scalar/scalar.c
+9
-8
index 8ef8dd5504..7be2a938b0 100644
--- a/contrib/scalar/scalar.c
+++ b/contrib/scalar/scalar.c
@@ -208,15 +208,16 @@ static int add_or_remove_enlistment(int add)
static int register_dir(void)
{
- int res = add_or_remove_enlistment(1);
+ if (add_or_remove_enlistment(1))
+ return error(_("could not add enlistment"));
- if (!res)
- res = set_recommended_config(0);
+ if (set_recommended_config(0))
+ return error(_("could not set recommended config"));
- if (!res)
- res = toggle_maintenance(1);
+ if (toggle_maintenance(1))
+ return error(_("could not turn on maintenance"));
- return res;
+ return 0;
}
static int unregister_dir(void)
@@ -224,10 +225,10 @@ static int unregister_dir(void)
int res = 0;
if (toggle_maintenance(0))
- res = -1;
+ res = error(_("could not turn off maintenance"));
if (add_or_remove_enlistment(0))
- res = -1;
+ res = error(_("could not remove enlistment"));
return res;
}