Subject: bug#34192: 26.1; Bash 5.0 breaks TRAMP sudo

From: Allen Li <[email-masked]>
Date: Mon, 28 Jan 2019 08:58:29 +0000

On Mon, Jan 28, 2019 at 8:19 AM Michael Albinus <[email-masked]> wrote:
>
> Allen Li <[email-masked]> writes:
>
> Hi Allen,
>
> > I believe Bash 5.0 breaks TRAMP sudo in
> > tramp-sh-handle-file-name-all-completions.
> >
> > Using Bash 5.0 and (find-file "/sudo::/") results in an error "Process
> > has died".  Setting tramp-verbose to 9 shows that it dies around here:
>
> Unfortunately, I have no bash 5.0 available. Could you pls eval the
> following lines in a bash 5.0 terminal:
>
> --8<---------------cut here---------------start------------->8---
> tramp_perl_file_name_all_completions () {
> \perl -e '
> opendir(d, $ARGV[0]) || die("$ARGV[0]: $!\nfail\n");
> @files = readdir(d); closedir(d);
> foreach $f (@files) {
>  if (-d "$ARGV[0]/$f") {
>   print "$f/\n";
>  }
>  else {
>   print "$f\n";
>  }
> }
> print "ok\n"
> ' "$1" 2>/dev/null
> }; echo tramp_exit_status $?
> --8<---------------cut here---------------end--------------->8---

I get tramp_exit_status 0 as expected, but I think
tramp_perl_file_name_all_completions may be a red herring, since when
I tried using Edebug on tramp-sh-handle-file-name-all-completions, I
get the "Process has died" error after some time irrespective of my
code stepping.

> Best regards, Michael.