GNU bug report logs -
#74208
31.0.50; minibuffer read-file-name-default mutates global value of default-directory incorrectly
Previous Next
Reported by: Madhu <enometh <at> meer.net>
Date: Tue, 5 Nov 2024 02:10:01 UTC
Severity: normal
Found in version 31.0.50
Fixed in version 31.1
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
Full log
Message #94 received at 74208-done <at> debbugs.gnu.org (full text, mbox):
Version: 31.1
Madhu <enometh <at> meer.net> writes:
Hi Madhu,
> I meant the defaulting use in the call to get_current_directory in
> callproc.c
I see. But as said, it isn't a robust setting:
--8<---------------cut here---------------start------------->8---
# env HOME=/foo emacs -Q --batch --eval '(let ((default-directory (expand-file-name "~"))) (shell-command "ls"))'
Error: file-missing ("Setting current directory" "No such file or directory" "/foo")
call-shell-region(1 1 "ls" nil #<buffer *Shell Command Output*>)
shell-command-on-region(1 1 "ls" nil nil nil)
shell-command("ls")
(let ((default-directory (expand-file-name "~"))) (shell-command "ls"))
eval((let ((default-directory (expand-file-name "~"))) (shell-command "ls")) t)
command-line-1(("--eval" "(let ((default-directory (expand-file-name \"~\"))) (shell-command \"ls\"))"))
command-line()
normal-top-level()
(Shell command failed with error)
Setting current directory: No such file or directory, /foo
--8<---------------cut here---------------end--------------->8---
> Speaking for myself: no. I'm a bit dissapointed that the setq doesn't
> get fixed, but I think the main problem has been addressed.
Thanks, so I'm closing the bug.
Best regards, Michael.
This bug report was last modified 161 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.