aboutsummaryrefslogtreecommitdiffstats
path: root/erts/preloaded/src/init.erl
diff options
context:
space:
mode:
authorSiri Hansen <[email protected]>2013-01-25 18:07:04 +0100
committerSiri Hansen <[email protected]>2013-01-25 18:07:04 +0100
commit22bb6f45c1c6305d494dc73004d81066d64d2183 (patch)
tree7bcc885ae80f0db476cbaded8aa9a2b85b7b165e /erts/preloaded/src/init.erl
parent3fb4def74a64a63fbb2b28aef6c5920d7db3ad6e (diff)
parent7a056d997ca002a99fec6d303b7077294c1d999b (diff)
downloadotp-22bb6f45c1c6305d494dc73004d81066d64d2183.tar.gz
otp-22bb6f45c1c6305d494dc73004d81066d64d2183.tar.bz2
otp-22bb6f45c1c6305d494dc73004d81066d64d2183.zip
Merge branch 'siri/unicode'
* siri/unicode: [test_server] Don't escape : and @ in test log links [test_server] Don't create latin1 filenames if filename mode is utf8 [test_server] Ensure correct encoding in header for erl2html2:convert [common_test] Update common test modules to handle unicode [ts] Use unicode:characters_to_list/2 instead of binary_to_list/1 [test_server] Add tests for unicode support [test_server] Write link target with correct encoding in erl2html2 [test_server] Update test_server to handle unicode Update preloaded init.beam Make arguments given with -s option to erl aware of file name encoding OTP-10702 OTP-10783
Diffstat (limited to 'erts/preloaded/src/init.erl')
-rw-r--r--erts/preloaded/src/init.erl16
1 files changed, 8 insertions, 8 deletions
diff --git a/erts/preloaded/src/init.erl b/erts/preloaded/src/init.erl
index 1d1087c7f2..61d8df2428 100644
--- a/erts/preloaded/src/init.erl
+++ b/erts/preloaded/src/init.erl
@@ -1,7 +1,7 @@
%%
%% %CopyrightBegin%
%%
-%% Copyright Ericsson AB 1996-2012. All Rights Reserved.
+%% Copyright Ericsson AB 1996-2013. All Rights Reserved.
%%
%% The contents of this file are subject to the Erlang Public License,
%% Version 1.1, (the "License"); you may not use this file except in
@@ -184,12 +184,16 @@ prepare_run_args({run, [M,F|Args]}) ->
[b2a(M), b2a(F) | bs2ss(Args)].
b2a(Bin) when is_binary(Bin) ->
- list_to_atom(binary_to_list(Bin));
+ list_to_atom(b2s(Bin));
b2a(A) when is_atom(A) ->
A.
b2s(Bin) when is_binary(Bin) ->
- binary_to_list(Bin);
+ try
+ unicode:characters_to_list(Bin,file:native_name_encoding())
+ catch
+ _:_ -> binary_to_list(Bin)
+ end;
b2s(L) when is_list(L) ->
L.
@@ -1260,11 +1264,7 @@ get_arguments([]) ->
[].
to_strings([H|T]) when is_atom(H) -> [atom_to_list(H)|to_strings(T)];
-to_strings([H|T]) when is_binary(H) -> [try
- unicode:characters_to_list(H,file:native_name_encoding())
- catch
- _:_ -> binary_to_list(H)
- end|to_strings(T)];
+to_strings([H|T]) when is_binary(H) -> [b2s(H)|to_strings(T)];
to_strings([]) -> [].
get_argument(Arg,Flags) ->