[ expat-Bugs-478332 ] infinite loop if input line to long

noreply@sourceforge.net noreply@sourceforge.net
Tue Jul 9 14:19:13 2002


Bugs item #478332, was opened at 2001-11-05 10:29
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=478332&group_id=10127

Category: None
Group: None
>Status: Closed
>Resolution: Works For Me
Priority: 5
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Nobody/Anonymous (nobody)
Summary: infinite loop if input line to long

Initial Comment:
In the main parser loop, the buffer that receives the 
input line is set to 1024 byte. If the line is longer 
than 1024 byte, the "XML_Parse" function is called and 
returns without parsing with the return value 
XML_NO_ERROR. The next "getLine" call to the input 
stream should get the next chunk of the input line. 
This second call to the input stream fails, because 
the output parameter "len" is set to "0" but the 
flag "IsFinal" is set to "false". This results in an 
infinite loop of "getLine" and "XML_Parse".

----------------------------------------------------------------------

>Comment By: Fred L. Drake, Jr. (fdrake)
Date: 2002-07-09 17:18

Message:
Logged In: YES 
user_id=3066

Either I can't reproduce this, or I don't understand the report.
I've added a regression test for this in tests/runtests.c 1.24.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=478332&group_id=10127