1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-22 07:09:54 +00:00

Avoid assertion violation in callproc.c

* src/callproc.c (call_process): Avoid assertion violation when
DESTINATION is a cons cell '(:file . "FOO")'.  (Bug#46426)
This commit is contained in:
Eli Zaretskii 2021-02-10 20:04:26 +02:00
parent dcc00bbb19
commit d03f2a6ee9

View File

@ -394,7 +394,11 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
/* If the buffer is (still) a list, it might be a (:file "file") spec. */ /* If the buffer is (still) a list, it might be a (:file "file") spec. */
if (CONSP (buffer) && EQ (XCAR (buffer), QCfile)) if (CONSP (buffer) && EQ (XCAR (buffer), QCfile))
{ {
output_file = Fexpand_file_name (XCAR (XCDR (buffer)), Lisp_Object ofile = XCDR (buffer);
if (CONSP (ofile))
ofile = XCAR (ofile);
CHECK_STRING (ofile);
output_file = Fexpand_file_name (ofile,
BVAR (current_buffer, directory)); BVAR (current_buffer, directory));
CHECK_STRING (output_file); CHECK_STRING (output_file);
buffer = Qnil; buffer = Qnil;