From 95553309efcdbf219dc0682383172d55c65d2277 Mon Sep 17 00:00:00 2001 From: Michael Albinus Date: Sat, 24 Oct 2020 14:36:34 +0200 Subject: [PATCH] Accept nil COMMAND in tramp-sh-handle-make-process (Bug#44151) * lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Accept nil COMMAND. (Bug#44151) * test/lisp/net/tramp-tests.el (tramp-test29-start-file-process): Extend test. --- lisp/net/tramp-sh.el | 2 +- test/lisp/net/tramp-tests.el | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index 2c7c6dae755..e65d376effc 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el @@ -2809,7 +2809,7 @@ implementation will be used." (signal 'wrong-type-argument (list #'stringp name))) (unless (or (null buffer) (bufferp buffer) (stringp buffer)) (signal 'wrong-type-argument (list #'stringp buffer))) - (unless (consp command) + (unless (or (null command) (consp command)) (signal 'wrong-type-argument (list #'consp command))) (unless (or (null coding) (and (symbolp coding) (memq coding coding-system-list)) diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el index c894f7ddaaa..02bd6138d5d 100644 --- a/test/lisp/net/tramp-tests.el +++ b/test/lisp/net/tramp-tests.el @@ -4366,6 +4366,22 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'." (while (accept-process-output proc 0 nil t)))) (should (string-match "foo" (buffer-string)))) + ;; Cleanup. + (ignore-errors (delete-process proc))) + + ;; PTY. + (unwind-protect + (with-temp-buffer + ;; It works only for tramp-sh.el, and not direct async processes. + (if (or (not (tramp--test-sh-p)) (tramp-direct-async-process-p)) + (should-error + (start-file-process "test4" (current-buffer) nil) + :type 'wrong-type-argument) + (setq proc (start-file-process "test4" (current-buffer) nil)) + (should (processp proc)) + (should (equal (process-status proc) 'run)) + (should (stringp (process-tty-name proc))))) + ;; Cleanup. (ignore-errors (delete-process proc)))))) -- 2.39.2