summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ibuffer.el18
1 files changed, 10 insertions, 8 deletions
diff --git a/ibuffer.el b/ibuffer.el
index c6c8989..9066617 100644
--- a/ibuffer.el
+++ b/ibuffer.el
@@ -420,14 +420,16 @@ value of `default-directory' in that buffer."
(:description "directory name"
:reader (read-from-minibuffer
"Filter by directory name (regex): "))
- (ibuffer-aif (with-current-buffer buf (ibuffer-buffer-file-name))
- (let ((dirname (expand-file-name (file-name-directory it))))
- (cond (dirname (string-match-p qualifier dirname))))
- (when (buffer-local-value default-directory buf)
- (string-match-p
- qualifier
- (expand-file-name
- (buffer-local-value buf default-directory))))))
+ (let ((buf-name (with-current-buffer buf (ibuffer-buffer-file-name))))
+ (cond (buf-name
+ (let ((dirname
+ (expand-file-name (file-name-directory buf-name))))
+ (cond (dirname (string-match-p qualifier dirname)))))
+ ((buffer-local-value default-directory buf)
+ (string-match-p
+ qualifier
+ (expand-file-name
+ (buffer-local-value buf default-directory)))))))
;;;###autoload
(defun durand-bongo-set-filter ()