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.
This commit is contained in:
Michael Albinus 2020-10-24 14:36:34 +02:00
parent 6dfcb4d4dc
commit 95553309ef
2 changed files with 17 additions and 1 deletions

View file

@ -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))

View file

@ -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))))))