Jim Porter writes: > I believe this could be: > > (or (run-hook-with-args-until-success > 'eww-guess-content-type-functions headers response-buffer) > "text/plain") TIL. I landed in seq-some looking for something like run-hook-with-args-until-sucess. So I actually learned two days in a row! :) Attached a modified patch. I also noticed and corrected another error, that broke things when using the "g" (reload) command. As for testing, I used this: (defun do-ask (headers response) (when (y-or-n-p "decide?") (if (y-or-n-p "render?") "text/html" "text/plain"))) (setq eww-guess-content-type-functions '(do-ask eww--html-if-doctype)) And then reverse the order of the functions. Using "regular" pages and the one reported in the bug. Also tested with no functions.