浏览代码

check locks before locking a dep to not have duplicates

pull/114/head
Tristan Sloughter 10 年前
父节点
当前提交
ebb713449e
共有 1 个文件被更改,包括 9 次插入2 次删除
  1. +9
    -2
      src/rebar_prv_install_deps.erl

+ 9
- 2
src/rebar_prv_install_deps.erl 查看文件

@ -205,8 +205,15 @@ maybe_lock(Profile, AppInfo, Seen, State, Level) ->
default ->
case sets:is_element(Name, Seen) of
false ->
{sets:add_element(Name, Seen),
rebar_state:lock(State, rebar_app_info:dep_level(AppInfo, Level))};
AppName = rebar_app_info:name(AppInfo),
Locks = rebar_state:lock(State),
case lists:any(fun(App) -> rebar_app_info:name(App) =:= AppName end, Locks) of
true ->
{sets:add_element(Name, Seen), State};
false ->
{sets:add_element(Name, Seen),
rebar_state:lock(State, rebar_app_info:dep_level(AppInfo, Level))}
end;
true ->
{Seen, State}
end;

正在加载...
取消
保存