-
- /* Optimize for the common all-ASCII case, computing len en passant */
- for (external_len = 0; external_name[external_len] ; external_len++)
- {
- if (!BYTE_ASCII_P (external_name[external_len]))
- ascii_filename_p = 0;
- }
- if (ascii_filename_p)
+ Extcount external_len = strlen (rtnval->d_name);
+ const Bufbyte *internal_name;
+ Bytecount internal_len;
+
+ TO_INTERNAL_FORMAT (DATA, (external_name, external_len),
+ ALLOCA, (internal_name, internal_len),
+ Qfile_name);
+
+ /* check for common case of ASCII filename */
+ if (internal_len == external_len &&
+ !memcmp (external_name, internal_name, internal_len))