GNU bug report logs - #5548
eshell has an odd idea of file permissions

Previous Next

Package: emacs;

Reported by: Glenn Morris <rgm <at> gnu.org>

Date: Mon, 8 Feb 2010 23:55:02 UTC

Severity: normal

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

Full log


Message #3 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: submit <at> debbugs.gnu.org
Subject: eshell has an odd idea of file permissions
Date: Mon, 08 Feb 2010 18:54:47 -0500
Current trunk on GNU/Linux:

mkdir foo
cd foo
touch 1 2 3 4
chmod 644 1               # writable by owner
chmod 446 2               # writable by other
chmod 744 3               # executable by owner
chmod 447 4               # executable by other

emacs -Q -f eshell
eshell> ls

"1" appears in eshell-ls-readonly face, "2" in default face.
"3" appears in readonly face, "4" in eshell-ls-executable face.

This seems to be due to eshell-ls-applicable, which looks odd to me.

Firstly, it does different things according to whether or not a file's
owner attribute is reported in numeric or string form.

Secondly, if the attribute is a string and the file is not remote (?),
it adds 6 to the index position to be checked, meaning it checks the
"other" file permission index.

For example, to test if a file is readable, it ends up testing
the 1+6=7 th (from 0) character in "-rw-r--r--".




This bug report was last modified 15 years and 165 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.