From: Andrew Innes Date: Fri, 29 Jan 1999 18:13:30 +0000 (+0000) Subject: (rmail-insert-inbox-text): Handle POP mailboxes X-Git-Tag: emacs-20.4~729 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1f0402c393a593d4e8285ee54d1d38ab0643ce4e;p=emacs.git (rmail-insert-inbox-text): Handle POP mailboxes where the userid contains directory separators. --- diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index 6384db9e71e..03be8dce49f 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -1305,9 +1305,15 @@ It returns t if it got any new messages." (file-name-nondirectory buffer-file-name))) (let (file tofile delete-files movemail popmail got-password password) (while files - (setq file (file-truename - (expand-file-name (substitute-in-file-name (car files)))) - tofile (expand-file-name + ;; Handle POP mailbox names specially; don't expand as filenames + ;; in case the userid contains a directory separator. + (setq file (car files)) + (setq popmail (string-match "^po:" file)) + (if popmail + (setq renamep t) + (setq file (file-truename + (expand-file-name (substitute-in-file-name file))))) + (setq tofile (expand-file-name ;; Generate name to move to from inbox name, ;; in case of multiple inboxes that need moving. (concat ".newmail-" (file-name-nondirectory file)) @@ -1327,10 +1333,7 @@ It returns t if it got any new messages." ;;; (file-truename ;;; (concat rmail-spool-directory ;;; (file-name-nondirectory file))))) - (setq popmail (string-match "^po:" (file-name-nondirectory file))) - (if popmail (setq file (file-name-nondirectory file) - renamep t)) - (if movemail + (if (and movemail (not popmail)) (progn ;; On some systems, /usr/spool/mail/foo is a directory ;; and the actual inbox is /usr/spool/mail/foo/foo. @@ -1345,7 +1348,8 @@ It returns t if it got any new messages." ;; cannot have "po:" in file name (setq tofile (expand-file-name - (concat ".newmail-pop-" (substring file (+ popmail 3))) + (concat ".newmail-pop-" + (file-name-nondirectory (substring file 3))) (file-name-directory (expand-file-name buffer-file-name))))) (message "Getting mail from post office ..."))