anchor.diff:      ?ABORT("~s failed with error: ~w\n", [Command, Rc]).
   
   
  +expand_sh_flag(use_stderr) ->
  +    {stderr_handler, fun(Out) ->
  +                             file:write(standard_error,Out)
  +                     end};
   
   expand_sh_flag(return_on_error) ->
       {error_handler,
  
positive.code:         {Port, {exit_status, 0}} ->
              {ok, lists:flatten(Acc)};
          {Port, {exit_status, Rc}} ->
              {error, Rc}
      end.
  
  
  
negative.code: sh(Command0, Options0) ->
      ?INFO("sh: ~s~n", [Command0]),
  
      DefaultOptions = [use_stdout, use_stderr, abort_on_error],
      Options = [expand_sh_flag(V)
                 || V <- proplists:compact(Options0 ++ DefaultOptions)],
  
      ErrorHandler = proplists:get_value(error_handler, Options),
      OutputHandler = proplists:get_value(output_handler, Options),
      StdErrHandler = proplists:get_value(stderr_handler, Options, fun(_) -> io:format("BAH!~n~n") end),
  
      Command = patch_on_windows(Command0),
      PortSettings = proplists:get_all_values(port_settings, Options) ++
  