Browse Source

Merge pull request #901 from talentdeficit/prevent_purge_termination

prevent rebar3 from reloading it's own path and terminating itself
pull/904/head
Tristan Sloughter 9 years ago
parent
commit
9bbab27819
1 changed files with 7 additions and 1 deletions
  1. +7
    -1
      src/rebar_utils.erl

+ 7
- 1
src/rebar_utils.erl View File

@ -654,13 +654,19 @@ update_code(Paths) ->
code:add_patha(Path),
ok;
{ok, Modules} ->
%% stick rebar ebin dir before purging to prevent
%% inadvertent termination
RebarBin = code:lib_dir(rebar, ebin),
ok = code:stick_dir(RebarBin),
%% replace_path causes problems when running
%% tests in projects like erlware_commons that rebar3
%% also includes
%code:replace_path(App, Path),
code:del_path(App),
code:add_patha(Path),
[begin code:purge(M), code:delete(M) end || M <- Modules]
[begin code:purge(M), code:delete(M) end || M <- Modules],
%% unstick rebar dir
ok = code:unstick_dir(RebarBin)
end
end, Paths).

Loading…
Cancel
Save