Subject: Re: bug#46568: 27.1; TRAMP: wrong-argument-type processp: nil on find-file

From: Michael Albinus <[email-masked]>
Date: Tue, 16 Feb 2021 21:18:18 +0100

David Greene via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <[email-masked]> writes:

Hi David,

> I am getting the above error when doing a find-file in a vterm buffer
> with a remote shell. I have not changed anything recently in my config
> and I don't think the remote host has changed, but can't be sure since I
> don't control it.
>
> I have also seen a message about TRAMP not finding the command to check
> file existance.
>
> I have tried both 26.2 and 27.1 with no change in behavior.  Previously
> I had ivy/counsel enabled but even after disabling it the error still
> occurs.

Does this also happen if you start "emacs -Q"?

> Here's a (sanitized) TRAMP debug log:
>
>   backtrace()
>   tramp-signal-hook-function(wrong-type-argument ("processp nil"))
>   signal(wrong-type-argument ("processp nil"))
>   tramp-maybe-open-connection((tramp-file-name #("ssh" 0 3 (tramp-default t)) "user" nil "host" nil "/path/user/src/project/README.md" nil))
>   tramp-send-command((tramp-file-name #("ssh" 0 3 (tramp-default t)) "user" nil "host" nil "/path/user/src/project/README.md" nil) "test 0 2>/dev/null; echo tramp_exit_status $?")
>   tramp-send-command-and-check((tramp-file-name #("ssh" 0 3 (tramp-default t)) "user" nil "host" nil "/path/user/src/project/README.md" nil) "test 0")
>   tramp-get-test-command((tramp-file-name #("ssh" 0 3 (tramp-default t)) "user" nil "host" nil "/path/user/src/project/README.md" nil))
>   tramp-run-test("-d" #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   tramp-sh-handle-file-directory-p(#("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   apply(tramp-sh-handle-file-directory-p #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   tramp-sh-file-name-handler(file-directory-p #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   apply(tramp-sh-file-name-handler file-directory-p #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   tramp-file-name-handler(file-directory-p #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   file-directory-p(#("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)))
>   find-file-noselect(#("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)) nil nil t)
>   find-file(#("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)) t)
>   funcall-interactively(find-file #("/ssh:user@host:/path/user/src/project/RE..." 1 4 (tramp-default t)) t)
>   call-interactively(find-file nil nil)
>   command-execute(find-file)

That doesn't tell too much. If the test above doesn't help, could you
please start

# emacs -Q --eval '(setq tramp-verbose 6)'

and rerun the test? There will be a Tramp debug buffer; pls show it.

Best regards, Michael.