diff options
author | Peter Andersson <[email protected]> | 2016-07-20 17:31:06 +0200 |
---|---|---|
committer | Peter Andersson <[email protected]> | 2016-09-08 00:18:48 +0200 |
commit | c376e2a0fd5cc77ce6be99279a601e680b86a1b4 (patch) | |
tree | c9f44d852efcc6c24b2b12c7c7bbc88cf83ac53d | |
parent | 970309e0cfa8450837ace53caa13dd2301b378b6 (diff) | |
download | otp-c376e2a0fd5cc77ce6be99279a601e680b86a1b4.tar.gz otp-c376e2a0fd5cc77ce6be99279a601e680b86a1b4.tar.bz2 otp-c376e2a0fd5cc77ce6be99279a601e680b86a1b4.zip |
Fix incorrect priv_dir when adding app's ebin directory to path
-rw-r--r-- | lib/kernel/src/code_server.erl | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/kernel/src/code_server.erl b/lib/kernel/src/code_server.erl index 48541ec500..29307bc696 100644 --- a/lib/kernel/src/code_server.erl +++ b/lib/kernel/src/code_server.erl @@ -811,7 +811,13 @@ clear_namedb([], _) -> %% Dir must be a complete pathname (not only a name). insert_dir(Dir, Db) -> Splitted = filename:split(Dir), - Name = get_name_from_splitted(Splitted), + case get_name_from_splitted(Splitted) of + Name when Name /= "ebin", Name /= "." -> + Name; + _ -> + SplittedAbsName = filename:split(absname(Dir)), + Name = get_name_from_splitted(SplittedAbsName) + end, AppDir = filename:join(del_ebin_1(Splitted)), do_insert_name(Name, AppDir, Db). @@ -952,6 +958,10 @@ del_ebin_1([Parent,App,"ebin"]) -> [Archive] end end; +del_ebin_1(Path = [_App,"ebin"]) -> + del_ebin_1(filename:split(absname(filename:join(Path)))); +del_ebin_1(["ebin"]) -> + del_ebin_1(filename:split(absname("ebin"))); del_ebin_1([H|T]) -> [H|del_ebin_1(T)]; del_ebin_1([]) -> |