From 113ed66f495b43231198fc03cdb9ec506d10ae22 Mon Sep 17 00:00:00 2001 From: Badlop Date: Mon, 13 Mar 2017 11:26:58 +0100 Subject: [PATCH] In module_install copy also deps/ebin and priv files (ejabberd-contrib#200) --- src/ext_mod.erl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/ext_mod.erl b/src/ext_mod.erl index 00230496a..387051d08 100644 --- a/src/ext_mod.erl +++ b/src/ext_mod.erl @@ -570,10 +570,13 @@ compile_elixir_file(Dest, File) -> install(Module, Spec, SrcDir, LibDir) -> {ok, CurDir} = file:get_cwd(), file:set_cwd(SrcDir), + Files1 = [{File, copy(File, filename:join(LibDir, File))} + || File <- filelib:wildcard("{ebin,priv,conf,include}/**")], + Files2 = [{File, copy(File, filename:join(LibDir, filename:join(lists:nthtail(2,filename:split(File)))))} + || File <- filelib:wildcard("deps/*/{ebin,priv}/**")], Errors = lists:dropwhile(fun({_, ok}) -> true; (_) -> false - end, [{File, copy(File, filename:join(LibDir, File))} - || File <- filelib:wildcard("{ebin,priv,conf,include}/**")]), + end, Files1++Files2), Result = case Errors of [{F, {error, E}}|_] -> {error, {F, E}};