Mercurial > emacs
comparison lisp/files.el @ 87475:d5c5e7e3d557
(cd-absolute): Fix omission bug:
Make `list-buffers-directory' buffer-local.
author | Thien-Thi Nguyen <ttn@gnuvola.org> |
---|---|
date | Sat, 29 Dec 2007 12:58:06 +0000 |
parents | cdd30283527d |
children | 107ccd98fa12 c938ab6810a4 |
comparison
equal
deleted
inserted
replaced
87474:dc4354c7a6c7 | 87475:d5c5e7e3d557 |
---|---|
633 (setq dir (abbreviate-file-name (expand-file-name dir))) | 633 (setq dir (abbreviate-file-name (expand-file-name dir))) |
634 (if (not (file-directory-p dir)) | 634 (if (not (file-directory-p dir)) |
635 (if (file-exists-p dir) | 635 (if (file-exists-p dir) |
636 (error "%s is not a directory" dir) | 636 (error "%s is not a directory" dir) |
637 (error "%s: no such directory" dir)) | 637 (error "%s: no such directory" dir)) |
638 (if (file-executable-p dir) | 638 (unless (file-executable-p dir) |
639 (setq default-directory dir | 639 (error "Cannot cd to %s: Permission denied" dir)) |
640 list-buffers-directory dir) | 640 (setq default-directory dir) |
641 (error "Cannot cd to %s: Permission denied" dir)))) | 641 (set (make-local-variable 'list-buffers-directory) dir))) |
642 | 642 |
643 (defun cd (dir) | 643 (defun cd (dir) |
644 "Make DIR become the current buffer's default directory. | 644 "Make DIR become the current buffer's default directory. |
645 If your environment includes a `CDPATH' variable, try each one of | 645 If your environment includes a `CDPATH' variable, try each one of |
646 that list of directories (separated by occurrences of | 646 that list of directories (separated by occurrences of |