[cxml-cvs] CVS update: cxml/xml/xml-parse.lisp
David Lichteblau
dlichteblau at common-lisp.net
Sun Nov 27 17:19:16 UTC 2005
Update of /project/cxml/cvsroot/cxml/xml
In directory common-lisp.net:/tmp/cvs-serv4026/xml
Modified Files:
xml-parse.lisp
Log Message:
encoding-fehler resignalisieren
Date: Sun Nov 27 18:19:14 2005
Author: dlichteblau
Index: cxml/xml/xml-parse.lisp
diff -u cxml/xml/xml-parse.lisp:1.34 cxml/xml/xml-parse.lisp:1.35
--- cxml/xml/xml-parse.lisp:1.34 Sun Nov 27 17:49:22 2005
+++ cxml/xml/xml-parse.lisp Sun Nov 27 18:19:14 2005
@@ -2960,10 +2960,13 @@
:type type))))))
(defun parse-xstream (xstream handler &rest args)
- (let ((zstream (make-zstream :input-stack (list xstream))))
- (peek-rune xstream)
- (with-scratch-pads ()
- (apply #'p/document zstream handler args))))
+ (handler-case
+ (let ((zstream (make-zstream :input-stack (list xstream))))
+ (peek-rune xstream)
+ (with-scratch-pads ()
+ (apply #'p/document zstream handler args)))
+ (runes-encoding:encoding-error (c)
+ (wf-error "~A" c))))
(defun parse-file (filename handler &rest args)
(with-open-xfile (input filename)
@@ -3021,10 +3024,7 @@
(defun parse-string (string handler)
;; XXX this function mis-handles encoding
- (with-scratch-pads ()
- (let* ((x (string->xstream string))
- (z (make-zstream :input-stack (list x))))
- (p/document z handler))))
+ (parse-xstream (string->xstream string) handler))
(defun string->xstream (string)
;; XXX encoding is mis-handled by this kind of stream
More information about the Cxml-cvs
mailing list