Jonathan G. Underwood b9972d
=== modified file 'lisp/nxml/nxml-mode.el'
Jonathan G. Underwood b9972d
--- lisp/nxml/nxml-mode.el	2009-09-24 23:22:17 +0000
Jonathan G. Underwood b9972d
+++ lisp/nxml/nxml-mode.el	2009-10-24 21:32:19 +0000
Jonathan G. Underwood b9972d
@@ -1254,29 +1254,31 @@
Jonathan G. Underwood b9972d
 
Jonathan G. Underwood b9972d
 (defun nxml-balanced-close-start-tag (block-or-inline)
Jonathan G. Underwood b9972d
   (let ((token-end (nxml-token-before))
Jonathan G. Underwood b9972d
-	(pos (1+ (point))))
Jonathan G. Underwood b9972d
+	(pos (1+ (point)))
Jonathan G. Underwood b9972d
+	(token-start xmltok-start))
Jonathan G. Underwood b9972d
     (unless (or (eq xmltok-type 'partial-start-tag)
Jonathan G. Underwood b9972d
 		(and (memq xmltok-type '(start-tag
Jonathan G. Underwood b9972d
 					 empty-element
Jonathan G. Underwood b9972d
 					 partial-empty-element))
Jonathan G. Underwood b9972d
 		     (>= token-end pos)))
Jonathan G. Underwood b9972d
       (error "Not in a start-tag"))
Jonathan G. Underwood b9972d
+    ;; Note that this insertion changes xmltok-start.
Jonathan G. Underwood b9972d
     (insert "></"
Jonathan G. Underwood b9972d
 	    (buffer-substring-no-properties (+ xmltok-start 1)
Jonathan G. Underwood b9972d
 					    (min xmltok-name-end (point)))
Jonathan G. Underwood b9972d
 	    ">")
Jonathan G. Underwood b9972d
     (if (eq block-or-inline 'inline)
Jonathan G. Underwood b9972d
 	(goto-char pos)
Jonathan G. Underwood b9972d
-      (goto-char xmltok-start)
Jonathan G. Underwood b9972d
+      (goto-char token-start)
Jonathan G. Underwood b9972d
       (back-to-indentation)
Jonathan G. Underwood b9972d
-      (if (= (point) xmltok-start)
Jonathan G. Underwood b9972d
+      (if (= (point) token-start)
Jonathan G. Underwood b9972d
 	  (let ((indent (current-column)))
Jonathan G. Underwood b9972d
-	  (goto-char pos)
Jonathan G. Underwood b9972d
-	  (insert "\n")
Jonathan G. Underwood b9972d
-	  (indent-line-to indent)
Jonathan G. Underwood b9972d
-	  (goto-char pos)
Jonathan G. Underwood b9972d
-	  (insert "\n")
Jonathan G. Underwood b9972d
-	  (indent-line-to (+ nxml-child-indent indent)))
Jonathan G. Underwood b9972d
+	    (goto-char pos)
Jonathan G. Underwood b9972d
+	    (insert "\n")
Jonathan G. Underwood b9972d
+	    (indent-line-to indent)
Jonathan G. Underwood b9972d
+	    (goto-char pos)
Jonathan G. Underwood b9972d
+	    (insert "\n")
Jonathan G. Underwood b9972d
+	    (indent-line-to (+ nxml-child-indent indent)))
Jonathan G. Underwood b9972d
 	(goto-char pos)))))
Jonathan G. Underwood b9972d
 
Jonathan G. Underwood b9972d
 (defun nxml-finish-element ()
Jonathan G. Underwood b9972d