diff options
-rw-r--r-- | ibuffer.el | 18 |
1 files changed, 10 insertions, 8 deletions
@@ -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 () |