From d02734fb6d030c028e186ceb5508367c5ab84f7f Mon Sep 17 00:00:00 2001 From: Edward Barnard Date: Sat, 26 Sep 2015 15:45:23 +0100 Subject: Fuse xml reader on error --- src/xml/reader.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/xml/reader.rs') diff --git a/src/xml/reader.rs b/src/xml/reader.rs index 091775e..b372e8e 100644 --- a/src/xml/reader.rs +++ b/src/xml/reader.rs @@ -51,7 +51,7 @@ impl StreamingParser { } } - fn next_inner(&mut self) -> Option> { + fn read_next(&mut self) -> Option> { loop { match self.next_event() { XmlEvent::StartElement { name, .. } => { @@ -127,16 +127,16 @@ impl Iterator for StreamingParser { if self.finished { None } else { - match self.next_inner() { - None => { + match self.read_next() { + Some(Ok(event)) => Some(Ok(event)), + Some(Err(err)) => { self.finished = true; - None + Some(Err(err)) }, - ret @ Some(Err(_)) => { + None => { self.finished = true; - ret + None } - ret => ret } } } -- cgit v1.2.3