Function: mm-preferred-alternative-precedence
mm-preferred-alternative-precedence is a byte-compiled function
defined in mm-decode.el.gz.
Signature
(mm-preferred-alternative-precedence HANDLES)
Documentation
Return the precedence based on HANDLES and mm-discouraged-alternatives.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/mm-decode.el.gz
(defun mm-preferred-alternative-precedence (handles)
"Return the precedence based on HANDLES and `mm-discouraged-alternatives'."
(setq handles (reverse handles))
(dolist (disc (reverse mm-discouraged-alternatives))
(dolist (handle (copy-sequence handles))
(when (string-match disc (mm-handle-media-type handle))
(setq handles (nconc (delete handle handles) (list handle))))))
;; Remove empty parts.
(dolist (handle (copy-sequence handles))
(when (and (bufferp (mm-handle-buffer handle))
(not (with-current-buffer (mm-handle-buffer handle)
(goto-char (point-min))
(re-search-forward "[^ \t\n]" nil t))))
(setq handles (nconc (delete handle handles) (list handle)))))
(mapcar #'mm-handle-media-type handles))