mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-03-06 05:52:32 -08:00
* src/dired.c (directory_files_internal): Update comment
This commit is contained in:
parent
46a2e5dc93
commit
d51d72b4a6
1 changed files with 11 additions and 1 deletions
12
src/dired.c
12
src/dired.c
|
|
@ -270,7 +270,17 @@ directory_files_internal (Lisp_Object directory, Lisp_Object full,
|
|||
ptrdiff_t name_nbytes = SBYTES (name);
|
||||
ptrdiff_t nbytes = directory_nbytes + needsep + name_nbytes;
|
||||
ptrdiff_t nchars = SCHARS (directory) + needsep + SCHARS (name);
|
||||
/* FIXME: Why not make them all multibyte? */
|
||||
/* DECODE_FILE may return non-ASCII unibyte strings (e.g. when
|
||||
file-name-coding-system is 'binary'), so we don't know for sure
|
||||
that the bytes we have follow our internal utf-8 representation
|
||||
for multibyte strings. If nchars == nbytes we don't need to
|
||||
care and just return a unibyte string; and if not, that means
|
||||
one of 'name' or 'directory' is multibyte, in which case we
|
||||
presume that the other one would also be multibyte if it
|
||||
contained non-ASCII.
|
||||
FIXME: This last presumption is broken when 'directory' is
|
||||
multibyte (with non-ASCII), and 'name' is unibyte with non-ASCII
|
||||
(because file-name-coding-system is 'binary'). */
|
||||
finalname = (nchars == nbytes)
|
||||
? make_uninit_string (nbytes)
|
||||
: make_uninit_multibyte_string (nchars, nbytes);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue