aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/xml.el
diff options
context:
space:
mode:
authorMark A. Hershberger2004-10-07 18:13:43 +0000
committerMark A. Hershberger2004-10-07 18:13:43 +0000
commitf0d494374f2efd77e7c4b8aacc5e9ffedc859471 (patch)
tree9bebf0dea656d235094297d12876afcc7ae2ef93 /lisp/xml.el
parent8b0d8589d562ed9810e6d6b5a9b33d3a1c86f8fe (diff)
downloademacs-f0d494374f2efd77e7c4b8aacc5e9ffedc859471.tar.gz
emacs-f0d494374f2efd77e7c4b8aacc5e9ffedc859471.zip
2004-10-07 Mark A. Hershberger <mah@everybody.org>
* xml.el (xml-substitute-special): Limit handling of external entities.
Diffstat (limited to 'lisp/xml.el')
-rw-r--r--lisp/xml.el11
1 files changed, 3 insertions, 8 deletions
diff --git a/lisp/xml.el b/lisp/xml.el
index f1d8cbb1f00..b0d5d45f98d 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -727,14 +727,9 @@ This follows the rule [28] in the XML specifications."
727 (match-string 1 this-part))))))) 727 (match-string 1 this-part)))))))
728 728
729 (cond ((null children) 729 (cond ((null children)
730 (if (and (eq (length expansion) 1) 730 ;; FIXME: If we have an entity that expands into XML, this won't work.
731 (stringp (cadr expansion))) 731 (setq children
732 (setq children (concat prev-part expansion)) 732 (concat prev-part expansion)))
733 (if (stringp (car expansion))
734 (setq children
735 (list (concat prev-part (car expansion))
736 (append (cdr expansion))))
737 (setq children (append expansion prev-part)))))
738 ((stringp children) 733 ((stringp children)
739 (if (stringp expansion) 734 (if (stringp expansion)
740 (setq children (concat children prev-part expansion)) 735 (setq children (concat children prev-part expansion))