Issue1047
Created on 2008-06-06.02:39:04 by leosoto, last changed 2008-09-14.01:41:17 by zyasoft.
msg3228 (view) |
Author: Leonardo Soto (leosoto) |
Date: 2008-06-06.02:38:59 |
|
Parsing with pulldom doesn't work on jython trunk:
>>> from xml.dom.pulldom import parseString
>>> list(parseString("<foo></foo>"))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/lsoto/src/jython.doj/jython/dist/Lib/xml/dom/pulldom.py",
line 231, in next
rc = self.getEvent()
File "/home/lsoto/src/jython.doj/jython/dist/Lib/xml/dom/pulldom.py",
line 285, in _emit
rc = self.pulldom.firstEvent[1][0]
TypeError: 'NoneType' object is unsubscriptable
|
msg3229 (view) |
Author: Leonardo Soto (leosoto) |
Date: 2008-06-06.02:44:11 |
|
While I suspect that the root of the problem is the sax parser output
not conforming with what pulldom expects, changing DOMEventStream._emit
from:
def _emit(self):
""" Fallback replacement for getEvent() that emits
the events that _slurp() read previously.
"""
rc = self.pulldom.firstEvent[1][0]
self.pulldom.firstEvent[1] = self.pulldom.firstEvent[1][1]
return rc
To the following:
def _emit(self):
""" Fallback replacement for getEvent() that emits
the events that _slurp() read previously.
"""
if self.pulldom.firstEvent[1] is None:
return None
rc = self.pulldom.firstEvent[1][0]
self.pulldom.firstEvent[1] = self.pulldom.firstEvent[1][1]
return rc
*Seems* to work.
|
msg3317 (view) |
Author: Leonardo Soto (leosoto) |
Date: 2008-07-02.03:32:35 |
|
Workaround applied on r4836.
I think this need further investigation, thought.
|
msg3574 (view) |
Author: Jim Baker (zyasoft) |
Date: 2008-09-14.01:41:17 |
|
Fixed in 2.5
Tested in test_minidom.testSAX2DOM
|
|
Date |
User |
Action |
Args |
2008-09-14 01:41:17 | zyasoft | set | status: open -> closed resolution: fixed messages:
+ msg3574 nosy:
+ zyasoft |
2008-07-02 03:32:35 | leosoto | set | messages:
+ msg3317 |
2008-06-06 02:44:12 | leosoto | set | messages:
+ msg3229 |
2008-06-06 02:39:04 | leosoto | create | |
|