psgml / psgml-api.el

Diff from to

psgml-api.el

   (sgml-element-end element)		; Make sure all content is parsed
   (let ((main-buffer-max (point-max)))
     (save-excursion
-      (sgml-set-parse-state element 'start)
-      (when (eobp) (sgml-pop-entity))
-      (when (eolp) (forward-char 1))
-      (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun)
-      (let ((c (sgml-tree-content element)))
-	(while c
-	  (sgml-pop-all-entities)
-	  (funcall element-fun c)
-	  (sgml-set-parse-state c 'after)
-	  (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun)
-	  (setq c (sgml-tree-next c)))))
+      (sgml-with-parser-syntax-ro
+       (sgml-set-parse-state element 'start)
+       (when (eobp) (sgml-pop-entity))
+       (when (eolp) (forward-char 1))
+       (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun)
+       (let ((c (sgml-tree-content element)))
+         (while c
+           (sgml-pop-all-entities)
+           (funcall element-fun c)
+           (sgml-set-parse-state c 'after)
+           (sgml-parse-data main-buffer-max data-fun pi-fun entity-fun)
+           (setq c (sgml-tree-next c))))))
     )
   (sgml-pop-all-entities))
 
 				  sgml-entity-function)
   (let ((sgml-throw-on-element-change 'el-done))
     (catch sgml-throw-on-element-change
-      (sgml-with-parser-syntax
-       (sgml-parser-loop nil)))))
+      (sgml-parse-continue sgml-goal nil t))))
+
 
 ;;;; Entity management
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.