aboutsummaryrefslogtreecommitdiffstats
path: root/lib/reltool/src/reltool_server.erl
diff options
context:
space:
mode:
authorHåkan Mattsson <[email protected]>2010-03-05 14:33:00 +0100
committerHåkan Mattsson <[email protected]>2010-03-16 14:28:25 +0100
commit26d609d3193c0adb371e27317fa0de7cda203061 (patch)
treef6eea3e93f67bea6343029c920a6dc7dd80f9901 /lib/reltool/src/reltool_server.erl
parent31b790bdf8442a7eee22bfad0887d42278ffc18b (diff)
downloadotp-26d609d3193c0adb371e27317fa0de7cda203061.tar.gz
otp-26d609d3193c0adb371e27317fa0de7cda203061.tar.bz2
otp-26d609d3193c0adb371e27317fa0de7cda203061.zip
Make reltool independent of the function escript:foldl/3
The function is undocumented and is removed. The new implementation uses the newly introduced functions escript:extract/2 and zip:foldl/3. These new functions are documented (which implies that they are a part of the public API).
Diffstat (limited to 'lib/reltool/src/reltool_server.erl')
-rw-r--r--lib/reltool/src/reltool_server.erl27
1 files changed, 15 insertions, 12 deletions
diff --git a/lib/reltool/src/reltool_server.erl b/lib/reltool/src/reltool_server.erl
index 8d4530131f..11839e6a0e 100644
--- a/lib/reltool/src/reltool_server.erl
+++ b/lib/reltool/src/reltool_server.erl
@@ -1412,18 +1412,21 @@ escripts_to_apps([Escript | Escripts], Apps, OldApps, Status) ->
{FileAcc, StatusAcc}
end
end,
- try
- case escript:foldl(Fun, {[], Status}, Escript) of
- {ok, {Files, Status2}} ->
- {Apps2, Status3} = files_to_apps(Escript, lists:sort(Files), Apps, Apps, OldApps, Status2),
- escripts_to_apps(Escripts, Apps2, OldApps, Status3);
- {error, Reason} ->
- Text = lists:flatten(io_lib:format("~p", [Reason])),
- {[], reltool_utils:return_first_error(Status, "Illegal escript " ++ Escript ++ ": " ++ Text)}
- end
- catch
- throw:Reason2 when is_list(Reason2) ->
- {[], reltool_utils:return_first_error(Status, "Illegal escript " ++ Escript ++ ": " ++ Reason2)}
+ case reltool_utils:escript_foldl(Fun, {[], Status}, Escript) of
+ {ok, {Files, Status2}} ->
+ {Apps2, Status3} =
+ files_to_apps(Escript,
+ lists:sort(Files),
+ Apps,
+ Apps,
+ OldApps,
+ Status2),
+ escripts_to_apps(Escripts, Apps2, OldApps, Status3);
+ {error, Reason} ->
+ Text = lists:flatten(io_lib:format("~p", [Reason])),
+ {[], reltool_utils:return_first_error(Status,
+ "Illegal escript " ++
+ Escript ++ ": " ++ Text)}
end;
escripts_to_apps([], Apps, _OldApps, Status) ->
{Apps, Status}.