diff options
author | Patrik Nyblom <[email protected]> | 2010-10-14 10:12:57 +0200 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2010-11-30 16:29:05 +0100 |
commit | 63eeba2f6829aac2644eaf212ebef9cdf4b59e8d (patch) | |
tree | f5dd68d6626e30fe1e86ac312c60fc23c8120c0f /lib/kernel/src | |
parent | a3ad23a50ef3dbdb8309bd178014d3285d87a78f (diff) | |
download | otp-63eeba2f6829aac2644eaf212ebef9cdf4b59e8d.tar.gz otp-63eeba2f6829aac2644eaf212ebef9cdf4b59e8d.tar.bz2 otp-63eeba2f6829aac2644eaf212ebef9cdf4b59e8d.zip |
Handle binary file names and conversion of unicode strings
Diffstat (limited to 'lib/kernel/src')
-rw-r--r-- | lib/kernel/src/file.erl | 2 | ||||
-rw-r--r-- | lib/kernel/src/file_io_server.erl | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/kernel/src/file.erl b/lib/kernel/src/file.erl index 89432869e9..579b9132c6 100644 --- a/lib/kernel/src/file.erl +++ b/lib/kernel/src/file.erl @@ -1033,6 +1033,8 @@ path_open_first([], _Name, _Mode, LastError) -> %% Generates a flat file name from a deep list of atoms and %% characters (integers). +file_name(N) when is_binary(N) -> + N; file_name(N) -> try file_name_1(N) diff --git a/lib/kernel/src/file_io_server.erl b/lib/kernel/src/file_io_server.erl index 39dc32bb79..14da9c1a55 100644 --- a/lib/kernel/src/file_io_server.erl +++ b/lib/kernel/src/file_io_server.erl @@ -44,11 +44,11 @@ format_error(ErrorId) -> erl_posix_msg:message(ErrorId). start(Owner, FileName, ModeList) - when is_pid(Owner), is_list(FileName), is_list(ModeList) -> + when is_pid(Owner), (is_list(FileName) orelse is_binary(FileName)), is_list(ModeList) -> do_start(spawn, Owner, FileName, ModeList). start_link(Owner, FileName, ModeList) - when is_pid(Owner), is_list(FileName), is_list(ModeList) -> + when is_pid(Owner), (is_list(FileName) orelse is_binary(FileName)), is_list(ModeList) -> do_start(spawn_link, Owner, FileName, ModeList). %%%----------------------------------------------------------------- |