summaryrefslogtreecommitdiff
path: root/otp-0007-Add-extra-search-directory.patch
blob: ed9e2acd12e3fb6d8ec65e0af34c2cd93362a0f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From: Peter Lemenkov <lemenkov@gmail.com>
Date: Wed, 2 Aug 2017 16:12:19 +0300
Subject: [PATCH] Add extra search directory

Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>

diff --git a/lib/kernel/src/code_server.erl b/lib/kernel/src/code_server.erl
index 4c4823eb38..de0ab149fb 100644
--- a/lib/kernel/src/code_server.erl
+++ b/lib/kernel/src/code_server.erl
@@ -79,11 +79,17 @@ init(Ref, Parent, [Root,Mode]) ->
     IPath =
 	case Mode of
 	    interactive ->
-		LibDir = filename:append(Root, "lib"),
-		{ok,Dirs} = erl_prim_loader:list_dir(LibDir),
-		Paths = make_path(LibDir, Dirs),
+		F = fun(R) ->
+			LD = filename:append(R, "lib"),
+			case erl_prim_loader:list_dir(LD) of
+				    error -> [];
+				    {ok, D} -> make_path(LD, D)
+			end
+		    end,
+		Paths = F(Root),
+		SharedPaths = F("/usr/share/erlang"),
 		UserLibPaths = get_user_lib_dirs(),
-		["."] ++ UserLibPaths ++ Paths;
+		["."] ++ UserLibPaths ++ Paths ++ SharedPaths;
 	    _ ->
 		[]
 	end,