[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 3431e82: Ignore directory symlinks in directory-fil
From: |
Lars Ingebrigtsen |
Subject: |
[Emacs-diffs] master 3431e82: Ignore directory symlinks in directory-files-recursively |
Date: |
Fri, 12 Dec 2014 10:53:05 +0000 |
branch: master
commit 3431e82d16af3d5130f0218efd5fafaa797ed28a
Author: Lars Magne Ingebrigtsen <address@hidden>
Commit: Lars Magne Ingebrigtsen <address@hidden>
Ignore directory symlinks in directory-files-recursively
* files.el (directory-files-recursively): Don't follow symlinks to
other directories.
---
lisp/ChangeLog | 5 +++++
lisp/files.el | 12 ++++++------
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 75effaa..0410b22 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-12 Lars Magne Ingebrigtsen <address@hidden>
+
+ * files.el (directory-files-recursively): Don't follow symlinks to
+ other directories.
+
2014-12-12 Eric S. Raymond <address@hidden>
* vc/vc-dav.el, vc/vc-git.el, vc/vc-hg.el, vc/vc-src.el,
diff --git a/lisp/files.el b/lisp/files.el
index 568c1bb..40972d4 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -772,15 +772,15 @@ If INCLUDE-DIRECTORIES, also include directories that
have matching names."
'string<))
(unless (member file '("./" "../"))
(if (= (aref file (1- (length file))) ?/)
- (progn
- (setq result (nconc result (directory-files-recursively
- (expand-file-name file dir)
- match include-directories)))
+ (let ((path (expand-file-name file dir)))
+ ;; Don't follow symlinks to other directories.
+ (unless (file-symlink-p path)
+ (setq result (nconc result (directory-files-recursively
+ path match include-directories))))
(when (and include-directories
(string-match match
(substring file 0 (1- (length file)))))
- (setq result (nconc result (list
- (expand-file-name file dir))))))
+ (setq result (nconc result (list path)))))
(when (string-match match file)
(push (expand-file-name file dir) files)))))
(nconc result (nreverse files))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 3431e82: Ignore directory symlinks in directory-files-recursively,
Lars Ingebrigtsen <=