Keep symlinks in copies
This commit is contained in:
parent
0318b467bc
commit
c47c938537
1 changed files with 8 additions and 1 deletions
|
@ -80,7 +80,14 @@ copy(From, To) ->
|
||||||
copy_(From, To, [{file_info, [mode, time, owner, group]}]).
|
copy_(From, To, [{file_info, [mode, time, owner, group]}]).
|
||||||
|
|
||||||
copy_(From, To, Options) ->
|
copy_(From, To, Options) ->
|
||||||
case file:copy(From, To) of
|
Linked
|
||||||
|
= case file:read_link(From) of
|
||||||
|
{ok, Linked0} -> Linked0;
|
||||||
|
{error, _} -> undefined
|
||||||
|
end,
|
||||||
|
case Linked =/= undefined orelse file:copy(From, To) of
|
||||||
|
true ->
|
||||||
|
file:make_symlink(Linked, To);
|
||||||
{ok, _} ->
|
{ok, _} ->
|
||||||
copy_file_info(To, From, proplists:get_value(file_info, Options, []));
|
copy_file_info(To, From, proplists:get_value(file_info, Options, []));
|
||||||
{error, Error} ->
|
{error, Error} ->
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue