Grow a buffer for string normalization exponentially.
* dom/dom-builder.lisp (DOM-BUILDER): New slot `text-buffer'. (SAX:START-ELEMENT, SAX:END-ELEMENT, SAX:START-CDATA, SAX:END-CDATA, SAX:PROCESSING-INSTRUCTION, SAX:COMMENT): Call flush-characters. (SAX:CHARACTERS): Rewritten. (FLUSH-CHARACTERS): New, based on the old sax:characters. * dom/dom-impl.lisp ((initialize-instance :after entity-reference)): Call flush-characters.
This commit is contained in:
@ -1247,7 +1247,8 @@
|
||||
(push instance (element-stack handler))
|
||||
#+cxml-system::utf8dom-file
|
||||
(setf handler (cxml:make-recoder handler #'cxml:rod-to-utf8-string))
|
||||
(funcall resolver (real-rod (dom:name instance)) handler)))
|
||||
(funcall resolver (real-rod (dom:name instance)) handler)
|
||||
(flush-characters handler)))
|
||||
(labels ((walk (n)
|
||||
(setf (slot-value n 'read-only-p) t)
|
||||
(when (dom:element-p n)
|
||||
|
||||
Reference in New Issue
Block a user