From d2d3608047d86d093d7fe5bb093ae0d54777e374 Mon Sep 17 00:00:00 2001 From: Alex Es Date: Sat, 28 Jul 2018 09:08:01 +0300 Subject: More careful handling of source root. `from' directory should be excluded from the mask to avoid accidental expansion. --- src/rlx_prv_overlay.erl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/rlx_prv_overlay.erl b/src/rlx_prv_overlay.erl index 33648d7..59d0d8d 100644 --- a/src/rlx_prv_overlay.erl +++ b/src/rlx_prv_overlay.erl @@ -381,15 +381,16 @@ wildcard_copy(State, FromFile0, ToFile0, CopyFun, ErrorTag) -> filelib:ensure_dir(ToFile1), CopyFun(FromFile1, ToFile1); true -> + Root = absolute_path_from(Root), FromFiles = if - is_list(FromFile1) -> filelib:wildcard(FromFile1); + is_list(FromFile0) -> filelib:wildcard(FromFile0, Root); true -> [FromFile1] end, rlx_util:mkdir_p(ToFile1), lists:foldl(fun (_, {error, _} = Error) -> Error; (FromFile, ok) -> - CopyFun(FromFile, filename:join(ToFile1, filename:basename(FromFile))) + CopyFun(filename:join(Root, FromFile), filename:join(ToFile1, filename:basename(FromFile))) end, ok, FromFiles) end, -- cgit v1.2.3