Subject: bug#75304: 29.4; sshfs fails to mount when run by eshell and -f isn't passed

From: Eli Zaretskii <[email-masked]>
Date: Sat, 11 Jan 2025 13:14:58 +0200

> From: Richard Sent <[email-masked]>
> Date: Thu, 02 Jan 2025 16:37:37 -0500
> 
> Hi all,
> 
> When sshfs is invoked by eshell and allowed to daemonize (default),
> sshfs fails to mount the desired target directory. This seems to be
> caused by a SIGTERM signal being sent after sshfs daemonizes and enters
> the main fuse loop. (The return value of fuse_loop_mt is 15, which
> matches the return value when the process actually receives SIGTERM.
> Confirmed both by testing and documentation at [1].)
> 
> If I set process-connection-type to nil, sshfs works as expected. This
> isn't ideal because it can cause breakage elsewhere (e.g. ripgrep).
> 
> This issue sounds similar to a previous one with xdg-open [2].
> However, xdg-open's behavior seems to have been fixed in Emacs 29 ($
> xdg-open file.txt works on my machine), while this bug is present on 29.
> 
> For what it's worth, the problem also occurs when sshfs is invoked by a
> wrapper script and not eshell directly.
> 
> Tested in -Q.
> 
> [1]: https://libfuse.github.io/doxygen/fuse-3_810_84_2include_2fuse__lowlevel_8h.html#a5f1e538aa3287e251afbe985438c4249
> [2]: https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-11/msg01768.html

Jim, did you see this report?  Any comments or suggestions?