Subject: Re: bug#11421: call-process behavior wrt. to read only buffers depends on coding system for read operations
From: Stefan Kangas <[email-masked]>
To: Lars Ingebrigtsen <[email-masked]>
Cc: Pierre Courtieu <[email-masked]>, [email-masked], [email-masked], [email-masked], Rob Browning <[email-masked]>
Date: Fri, 17 Apr 2020 12:23:32 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Lars Ingebrigtsen <[email-masked]> writes:

> Rob Browning <[email-masked]> writes:
>
>> It appears that depending on the LOCALE setting, Emacs 23.4 may or may
>> not signal a "buffer is read-only" error.  At least here, this can be
>> demonstrated as follows.
>>
>> Save to ./test.el:
>>
>>   (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))))))
>
> [...]
>
>> which should produce something like this:
>>
>>   iso-latin-1-unix: call-process error: buffer-read-only (xxx)
>>   utf-8-unix: No call-process error
>
> When I try this in Emacs 27, I get:
>
> Waiting for process to die...done
> iso-latin-1-unix: call-process error: buffer-read-only (xxx)
> Waiting for process to die...done
> utf-8-unix: call-process error: buffer-read-only (xxx)
>
> Can you still reproduce this bug on modern Emacs versions?

More information was requested, but none was given within 28 weeks, so
I'm closing this bug.  If this is still an issue, please reply to this
email (use "Reply to all" in your email client) and we can reopen the
bug report.

Best regards,
Stefan Kangas