diff --git a/src/rebar_utils.erl b/src/rebar_utils.erl index 7dbb8f7..17fb95a 100644 --- a/src/rebar_utils.erl +++ b/src/rebar_utils.erl @@ -166,9 +166,7 @@ expand_sh_flag({abort_on_error, Message}) -> end}; expand_sh_flag(abort_on_error) -> {error_handler, - fun(Command, Rc) -> - ?ABORT("~s failed with error: ~w\n", [Command, Rc]) - end}; + fun log_and_abort/2}; expand_sh_flag(use_stdout) -> {output_handler, fun(Line, Acc) -> @@ -185,6 +183,10 @@ expand_sh_flag({cd, Dir}) -> expand_sh_flag({env, Env}) -> {port_settings, {env, Env}}. +-spec log_and_abort(string(), integer()) -> no_return(). +log_and_abort(Command, Rc) -> + ?ABORT("~s failed with error: ~w\n", [Command, Rc]). + sh_loop(Port, Fun, Acc) -> receive {Port, {data, {_, "_port_cmd_status_ " ++ Status}}} ->