Mercurial > hg > xemacs-beta
diff lisp/vm/vm-reply.el @ 100:4be1180a9e89 r20-1b2
Import from CVS: tag r20-1b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:15:11 +0200 |
parents | 0d2f883870bc |
children | a145efe76779 |
line wrap: on
line diff
--- a/lisp/vm/vm-reply.el Mon Aug 13 09:13:58 2007 +0200 +++ b/lisp/vm/vm-reply.el Mon Aug 13 09:15:11 2007 +0200 @@ -291,7 +291,7 @@ (vm-headers-of message) (vm-text-of message)) (cond ((vm-mime-types-match "multipart" type) - (setq parts (vm-mm-layout-parts o))) + (setq parts (copy-sequence (vm-mm-layout-parts o)))) (t (setq parts (list o)))) (while parts (cond ((vm-mime-text-type-p (car parts)) @@ -301,8 +301,15 @@ ;; just dump the raw bits (vm-mime-insert-mime-body (car parts)) (vm-mime-transfer-decode-region (car parts) - start (point))))) - (setq parts (cdr parts))) + start (point))) + (setq parts (cdr parts))) + ((vm-mime-composite-type-p + (car (vm-mm-layout-type (car parts)))) + (setq parts (nconc (copy-sequence + (vm-mm-layout-parts + (car parts))) + (cdr parts)))) + (t (setq parts (cdr parts))))) (setq end (point-marker))) (set-buffer (vm-buffer-of message)) (save-restriction @@ -650,7 +657,7 @@ (mail-text) (vm-mime-attach-object b "multipart/digest" (list (concat "boundary=\"" - boundary "\"")) t) + boundary "\"")) nil t) (add-hook 'kill-buffer-hook (list 'lambda () (list 'if (list 'eq mail-buffer '(current-buffer)) @@ -862,7 +869,7 @@ (mail-text) (vm-mime-attach-object b "multipart/digest" (list (concat "boundary=\"" - boundary "\"")) t) + boundary "\"")) nil t) (add-hook 'kill-buffer-hook (list 'lambda () (list 'if (list 'eq mail-buffer '(current-buffer)) @@ -955,7 +962,8 @@ ;; do it only once. (if (not vm-mail-mode-map-parented) (cond ((fboundp 'set-keymap-parents) - (set-keymap-parents vm-mail-mode-map (list mail-mode-map))) + (set-keymap-parents vm-mail-mode-map (list mail-mode-map)) + (setq vm-mail-mode-map-parented t)) ((consp mail-mode-map) (nconc vm-mail-mode-map mail-mode-map) (setq vm-mail-mode-map-parented t))))