Mercurial > emacs
changeset 57344:95ee82562c2a
fix to for xml-substitute-special to produce a single string instead
of several if a substitution is made.
author | Mark A. Hershberger <mah@everybody.org> |
---|---|
date | Wed, 06 Oct 2004 00:58:29 +0000 |
parents | 7af1127797dc |
children | f024640dc5e4 |
files | lisp/xml.el |
diffstat | 1 files changed, 12 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/xml.el Wed Oct 06 00:48:08 2004 +0000 +++ b/lisp/xml.el Wed Oct 06 00:58:29 2004 +0000 @@ -727,13 +727,13 @@ (match-string 1 this-part))))))) (cond ((null children) - (if (stringp expansion) + (if (and (eq (length expansion) 1) + (stringp (cadr expansion))) (setq children (concat prev-part expansion)) - (if (stringp (car (last expansion))) - (progn - (setq children - (list (concat prev-part (car expansion)) - (cdr expansion)))) + (if (stringp (car expansion)) + (setq children + (list (concat prev-part (car expansion)) + (append (cdr expansion)))) (setq children (append expansion prev-part))))) ((stringp children) (if (stringp expansion) @@ -756,11 +756,15 @@ (cond ((stringp children) (concat children (substring string point))) ((stringp (car (last children))) - (concat (car children) (substring string point))) + (concat (car (last children)) (substring string point))) ((null children) string) (t - (nreverse children))))) + (concat (mapconcat 'identity + (nreverse children) + "") + (substring string point)))))) + ;;******************************************************************* ;;** ;;** Printing a tree.