1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

Add way to prevent asking "increase specpdl size?"

* net/shr.el (shr-offer-extend-specpdl): New option, default t.
(shr-descend): If shr-offer-extend-specpdl is nil, don't even ask
whether to extend the specpdl, just signal error.
This commit is contained in:
Richard M Stallman 2020-10-15 22:32:41 -04:00 committed by Richard Stallman
parent f5c9d3f54e
commit 7e3a95d8fd

View file

@ -146,6 +146,14 @@ same domain as the main data."
:version "24.4"
:type 'boolean)
(defcustom shr-offer-extend-specpdl t
"Non-nil means offer to extend the specpdl if the HTML nests deeply.
Complicated HTML can require more nesting than the current specpdl
size permits. If this variable is t, ask the user whether to increase
the specpdl size. If nil, just give up."
:version "28.1"
:type 'boolean)
(defvar shr-content-function nil
"If bound, this should be a function that will return the content.
This is used for cid: URLs, and the function is called with the
@ -527,7 +535,8 @@ size, and full-buffer size."
(start (point)))
;; shr uses many frames per nested node.
(if (and (> shr-depth (/ max-specpdl-size 15))
(not (and (y-or-n-p "Too deeply nested to render properly; increase `max-specpdl-size'?")
(not (and shr-offer-extend-specpdl
(y-or-n-p "Too deeply nested to render properly; increase `max-specpdl-size'?")
(setq max-specpdl-size (* max-specpdl-size 2)))))
(setq shr-warning
"Not rendering the complete page because of too-deep nesting")