--- mailcap.el.~7.8.~ 2006-01-26 09:44:03.000000000 +1100 +++ mailcap.el 2006-01-28 09:01:39.000000000 +1100 @@ -644,12 +644,13 @@ (viewer (cdr (assoc 'viewer viewer-info))) (default-directory (expand-file-name "~/")) status parsed-test cache result) - (if (setq cache (assoc test mailcap-viewer-test-cache)) - (cadr cache) + (cond ((setq cache (assoc test mailcap-viewer-test-cache)) + (cadr cache)) + ((not test-info) t) ; No test clause + (t (setq result (cond - ((not test-info) t) ; No test clause ((not test) nil) ; Already failed test ((eq test t) t) ; Already passed test ((functionp test) ; Lisp function as test @@ -667,7 +668,7 @@ status (apply 'call-process test)) (eq 0 status)))) (push (list otest result) mailcap-viewer-test-cache) - result))) + result)))) (defun mailcap-add-mailcap-entry (major minor info) (let ((old-major (assoc major mailcap-mime-data)))