mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-20 02:30:23 +02:00
(file-exists?): Use stat rather than access?, so as to
follow the effective UID/GID not the real ID. file-exists? is normally be used as a prelude to opening or some other operation, and it's the effective ID which will apply there. Emacs file-exists-p uses stat, presumably for the the same reason.
This commit is contained in:
parent
e721987c47
commit
e4e92cf0af
1 changed files with 1 additions and 1 deletions
|
@ -459,7 +459,7 @@
|
||||||
(define file-exists?
|
(define file-exists?
|
||||||
(if (provided? 'posix)
|
(if (provided? 'posix)
|
||||||
(lambda (str)
|
(lambda (str)
|
||||||
(access? str F_OK))
|
(->bool (false-if-exception (stat str))))
|
||||||
(lambda (str)
|
(lambda (str)
|
||||||
(let ((port (catch 'system-error (lambda () (open-file str OPEN_READ))
|
(let ((port (catch 'system-error (lambda () (open-file str OPEN_READ))
|
||||||
(lambda args #f))))
|
(lambda args #f))))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue