[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
xml.el bug
From: |
Katsumi Yamaoka |
Subject: |
xml.el bug |
Date: |
Thu, 07 Oct 2004 10:06:56 +0900 |
User-agent: |
Gnus/5.110003 (No Gnus v0.3) Emacs/21.3.50 (gnu/linux) |
Hi,
I got an error while parsing BBC news using shimbun[1] and xml.el.
Here's a Lisp form which reproduces the same error as the case of
parsing the contents of:
http://www.bbc.co.uk/syndication/feeds/news/ukfs_news/world/rss091.xml
(xml-substitute-special
"The chief of Guinea-Bissau's army is killed by rebel soldiers in what is
described as a "revolt" over unpaid wages.")
[1] Shimbun is a library, a part of emacs-w3m.
The backtrace is:
Debugger entered--Lisp error: (wrong-type-argument listp "\"")
cadr("\"")
(stringp (cadr expansion))
(and (eq (length expansion) 1) (stringp (cadr expansion)))
(if (and (eq ... 1) (stringp ...)) (setq children (concat prev-part
expansion)) (if (stringp ...) (setq children ...) (setq children ...)))
(cond ((null children) (if ... ... ...)) ((stringp children) (if ... ...
...)) ((and ... ...) (setcar children ...)) ((stringp expansion) (setq children
...)) ((stringp ...) (setcar children ...) (setq children ...)) (t (setq
children ...)))
(let* ((this-part ...) (prev-part ...) (entity ...) (expansion ...)) (cond
(... ...) (... ...) (... ...) (... ...) (... ... ...) (t ...)) (setq point
end-point))
(while (string-match "&\\([^;]+\\);" string point) (setq end-point (match-end
0)) (let* (... ... ... ...) (cond ... ... ... ... ... ...) (setq point
end-point)))
(let ((point 0) children end-point) (while (string-match "&\\([^;]+\\);"
string point) (setq end-point ...) (let* ... ... ...)) (cond (... ...) (...
...) (... string) (t ...)))
xml-substitute-special("The chief of Guinea-Bissau's army is killed by rebel
soldiers in what is described as a "revolt" over unpaid wages.")
- xml.el bug,
Katsumi Yamaoka <=