Ethereal does not support chunked headers. I think that is the reason that ethereal shows strange content.
I also reproduced the error in another way. Without that the socket gives the LINETOOLONG.
In my latest test you see clearly that onion reads the socket and then pareses the http header. Then onion offers the data direclty to the parser without looking whether the data is completely received. It seems that onion does not support chunked http messages. In my opinion onion should wait till the last chunked message with length "0" is received. Only then the read data may be offered to xml DOM parsing.
In my new test I got a domexception with a namespace error (code 14) because the read data ended in the namespace "DA". The rest was not yet received.
Did you do something about the dataparsing problem I mentioned in an earlier mail?