--- a/.emacs-my Wed Sep 15 09:41:20 2010 +0300
+++ b/.emacs-my Wed Sep 15 09:41:25 2010 +0300
@@ -465,15 +465,16 @@
(defun my-dired-up-dir ()
"'Reuse' buffer if enter to dir or open new buffer if enter to file."
(interactive)
- (let* ( (dir (dired-current-directory)) (i (- (length dir) 2)) newdir )
+ ;; (dired-current-directory) always end with trailing '/' char.
+ (let* ( (dir (dired-current-directory)) (i (- (length dir) 2)) upperdir )
(while (and
(>= i 0)
(not (equal (aref dir i) ?/)) )
(setq i (- i 1))
)
- (setq newdir (substring dir 0 (max 0 i)))
- (when (file-directory-p newdir)
- (find-alternate-file newdir)
+ (setq upperdir (substring dir 0 (+ i 1)))
+ (when (file-directory-p upperdir)
+ (find-alternate-file upperdir)
(dired-goto-file dir)
)
))