Subject: bug#3221: 23.0.93; ns cannot handle nonascii file names

From: Leo <[email-masked]>
Date: Tue, 05 May 2009 15:36:30 +0100

This is the biggest bug in ns port of Emacs. It exposed itself
originally through emms but I have found an easy way to reproduce it.

1. move .emacs.d and .emacs to some other places so that no user
customisation is in effect.

2. start Emacs from Finder

3. M-! touch 求助.txt

No 求助.txt will be created instead, a file named .txt is created.

If you start Emacs from terminal by running for example:

  /Applications/Emacs.app/Contents/MacOS/Emacs

you won't see this bug.

The consequencies of this bug is that all packages that call external
programs won't be able to handle non ascii names. For example,

http://permalink.gmane.org/gmane.emacs.emms.user/1426

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/Applications/Emacs.app/Contents/Resources/etc/DEBUG for instructions.

In GNU Emacs 23.0.93.1 (i386-apple-darwin9.6.0, NS apple-appkit-949.43)
 of 2009-05-03 on neutron.local
Windowing system distributor `Apple', version 10.3.949
configured using `configure  '--with-ns''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  paredit-mode: t
  dired-omit-mode: t
  recentf-mode: t
  icomplete-mode: t
  savehist-mode: t
  display-time-mode: t
  xterm-mouse-mode: t
  delete-selection-mode: t
  global-auto-revert-mode: t
  minibuffer-depth-indicate-mode: t
  show-paren-mode: t
  rcirc-track-minor-mode: t
  shell-dirtrack-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-x g m M-x r e p o r <tab> <return>

Recent messages:
Loading rcirc...done
Loading paren...done
Loading /Users/gtd/.emacs.d/custom...done
Ido mode enabled
Loading /Users/gtd/.emacs.d/etc/recentf...done
Cleaning up the recentf list...done (0 removed)
Loading /Users/gtd/.emacs.d/init.d/site.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.
Current frame maximised.
(Press m to repeat this command)