diff options
author | Rickard Green <[email protected]> | 2017-10-12 17:05:02 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2017-10-12 17:05:02 +0200 |
commit | 5dc3cc971a7ce8d5384019a9a6f14a9ab7790163 (patch) | |
tree | b7e4befb7b193bdbf466a58e9de379edad5cdbf1 /lib/stdlib/doc/src/filename.xml | |
parent | 35d9fcedf1cc450ca36d95e9b8263fbc3e3a9b57 (diff) | |
parent | bb0b43eae854125688f3143e53c8974cafed4ad2 (diff) | |
download | otp-5dc3cc971a7ce8d5384019a9a6f14a9ab7790163.tar.gz otp-5dc3cc971a7ce8d5384019a9a6f14a9ab7790163.tar.bz2 otp-5dc3cc971a7ce8d5384019a9a6f14a9ab7790163.zip |
Merge branch 'rickard/null-chars/ERL-370/OTP-14543'
* rickard/null-chars/ERL-370/OTP-14543:
Don't allow null chars in various strings
Conflicts:
erts/emulator/beam/erl_alloc.types
erts/preloaded/ebin/erlang.beam
Diffstat (limited to 'lib/stdlib/doc/src/filename.xml')
-rw-r--r-- | lib/stdlib/doc/src/filename.xml | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/lib/stdlib/doc/src/filename.xml b/lib/stdlib/doc/src/filename.xml index 14fd5ef787..d2608ad542 100644 --- a/lib/stdlib/doc/src/filename.xml +++ b/lib/stdlib/doc/src/filename.xml @@ -46,7 +46,10 @@ filename by removing redundant directory separators, use <seealso marker="#join/1"><c>join/1</c></seealso>.</p> - <p>The module supports raw filenames in the way that if a binary is + <p> + The module supports + <seealso marker="unicode_usage#notes-about-raw-filenames">raw + filenames</seealso> in the way that if a binary is present, or the filename cannot be interpreted according to the return value of <seealso marker="kernel:file#native_name_encoding/0"> <c>file:native_name_encoding/0</c></seealso>, a raw filename is also @@ -56,6 +59,30 @@ (the join operation is performed of course). For more information about raw filenames, see the <seealso marker="kernel:file"><c>file</c></seealso> module.</p> + + <note> + <p> + Functionality in this module generally assumes valid input and + does not necessarily fail on input that does not use a valid + encoding, but may instead very likely produce invalid output. + </p> + <p> + File operations used to accept filenames containing + null characters (integer value zero). This caused + the name to be truncated and in some cases arguments + to primitive operations to be mixed up. Filenames + containing null characters inside the filename + are now <em>rejected</em> and will cause primitive + file operations to fail. + </p> + </note> + <warning><p> + Currently null characters at the end of the filename + will be accepted by primitive file operations. Such + filenames are however still documented as invalid. The + implementation will also change in the future and + reject such filenames. + </p></warning> </description> <datatypes> <datatype> @@ -555,6 +582,7 @@ unsafe</pre> ["a:/","msdev","include"]</pre> </desc> </func> + </funcs> </erlref> |