reassign 651420 emacs23 retitle 651420 call-process behavior wrt. to read only buffers depends on coding system for read operations thanks
I was finally able to reproduce the problem with emacs23 23.2+1-7 and 23.4+1-3. The problem can be triggered with a non-utf8 locale setting, eg LANG=de_DE emacs has the described problem while LANG=de_DE.utf8 emacs does not show the described problem. Pierre, can you try with the locale fr_FR.utf8 ? More investigation shows that a non-utf8 locale sets default-process-coding-system to iso-latin-1-unix, which changes the behavior of call-process with respect to read only buffers. Indeed, if you save (let ((buf (get-buffer-create "xxx"))) (with-current-buffer buf (compilation-mode)) (let ((coding-system-for-read 'iso-latin-1-unix)) (condition-case err (progn (call-process "/bin/cat" "/proc/cpuinfo" buf t) (message "iso-latin-1-unix: No call-process error")) (error (message "iso-latin-1-unix: call-process error: %s %s" (car err) (cdr err))))) (let ((coding-system-for-read 'utf-8-unix)) (condition-case err (progn (call-process "/bin/cat" "/proc/cpuinfo" buf t) (message "utf-8-unix: No call-process error")) (error (message "utf-8-unix: call-process error: %s %s" (car err) (cdr err)))))) to /tmp/test.el, then /usr/bin/emacs -q --no-site-file -batch -l /tmp/test.el will print iso-latin-1-unix: call-process error: buffer-read-only (xxx) utf-8-unix: No call-process error regardless of the locale setting. I don't know whether call-process should silently write to read-only buffers. But regardless of that, call-process should do the same thing with read-only buffers independent of the coding system for read operations. Bye, Hendrik -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org